From 030fa2228db86d2ee6bcf03e9726030bea50996b Mon Sep 17 00:00:00 2001 From: Seven Du Date: Thu, 29 Feb 2024 23:59:02 +0800 Subject: [PATCH 1/3] fix(generator): enum field name is `name` generated fail --- bin/src/generate_enum.dart | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bin/src/generate_enum.dart b/bin/src/generate_enum.dart index afe9a4a0..eb07e5a3 100644 --- a/bin/src/generate_enum.dart +++ b/bin/src/generate_enum.dart @@ -7,6 +7,8 @@ import 'generator.dart'; import 'utils/dart_style_fixer.dart'; import 'utils/reference.dart'; +const _enumFieldNames = ['name']; + extension GenerateEnum on Generator { Reference generateEnum( String name, dmmf.TypeNamespace? namespace, bool isList) { @@ -37,6 +39,10 @@ extension GenerateEnum on Generator { for (final value in enum$.values) { builder.values.add(EnumValue((builder) { builder.name = value.propertyName; + if (_enumFieldNames.contains(builder.name)) { + builder.name = '${builder.name}\$'; + } + builder.constructorName = _defaultConstructor.name; builder.arguments.add(literalString(value)); })); From 4f9573136a84187eef780376db5846e02d468c0b Mon Sep 17 00:00:00 2001 From: Seven Du Date: Thu, 29 Feb 2024 23:59:35 +0800 Subject: [PATCH 2/3] example: issue #340 @AndryHTC --- i340/.env | 7 + i340/.gitignore | 3 + i340/CHANGELOG.md | 3 + i340/README.md | 2 + i340/analysis_options.yaml | 30 + i340/bin/i340.dart | 5 + i340/bun.lockb | Bin 0 -> 3362 bytes i340/lib/i340.dart | 3 + i340/package.json | 5 + i340/prisma/generated_dart_client/client.dart | 26961 +++ i340/prisma/generated_dart_client/model.dart | 2459 + i340/prisma/generated_dart_client/prisma.dart | 143077 +++++++++++++++ i340/prisma/schema.prisma | 723 + i340/pubspec.yaml | 18 + i340/test/i340_test.dart | 8 + 15 files changed, 173304 insertions(+) create mode 100644 i340/.env create mode 100644 i340/.gitignore create mode 100644 i340/CHANGELOG.md create mode 100644 i340/README.md create mode 100644 i340/analysis_options.yaml create mode 100644 i340/bin/i340.dart create mode 100755 i340/bun.lockb create mode 100644 i340/lib/i340.dart create mode 100644 i340/package.json create mode 100644 i340/prisma/generated_dart_client/client.dart create mode 100644 i340/prisma/generated_dart_client/model.dart create mode 100644 i340/prisma/generated_dart_client/prisma.dart create mode 100644 i340/prisma/schema.prisma create mode 100644 i340/pubspec.yaml create mode 100644 i340/test/i340_test.dart diff --git a/i340/.env b/i340/.env new file mode 100644 index 00000000..153f9d97 --- /dev/null +++ b/i340/.env @@ -0,0 +1,7 @@ +# Environment variables declared in this file are automatically made available to Prisma. +# See the documentation for more detail: https://pris.ly/d/prisma-schema#accessing-environment-variables-from-the-schema + +# Prisma supports the native connection string format for PostgreSQL, MySQL, SQLite, SQL Server, MongoDB and CockroachDB. +# See the documentation for all the connection string options: https://pris.ly/d/connection-strings + +DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public" \ No newline at end of file diff --git a/i340/.gitignore b/i340/.gitignore new file mode 100644 index 00000000..3a857904 --- /dev/null +++ b/i340/.gitignore @@ -0,0 +1,3 @@ +# https://dart.dev/guides/libraries/private-files +# Created by `dart pub` +.dart_tool/ diff --git a/i340/CHANGELOG.md b/i340/CHANGELOG.md new file mode 100644 index 00000000..effe43c8 --- /dev/null +++ b/i340/CHANGELOG.md @@ -0,0 +1,3 @@ +## 1.0.0 + +- Initial version. diff --git a/i340/README.md b/i340/README.md new file mode 100644 index 00000000..3816eca3 --- /dev/null +++ b/i340/README.md @@ -0,0 +1,2 @@ +A sample command-line application with an entrypoint in `bin/`, library code +in `lib/`, and example unit test in `test/`. diff --git a/i340/analysis_options.yaml b/i340/analysis_options.yaml new file mode 100644 index 00000000..dee8927a --- /dev/null +++ b/i340/analysis_options.yaml @@ -0,0 +1,30 @@ +# This file configures the static analysis results for your project (errors, +# warnings, and lints). +# +# This enables the 'recommended' set of lints from `package:lints`. +# This set helps identify many issues that may lead to problems when running +# or consuming Dart code, and enforces writing Dart using a single, idiomatic +# style and format. +# +# If you want a smaller set of lints you can change this to specify +# 'package:lints/core.yaml'. These are just the most critical lints +# (the recommended set includes the core lints). +# The core lints are also what is used by pub.dev for scoring packages. + +include: package:lints/recommended.yaml + +# Uncomment the following section to specify additional rules. + +# linter: +# rules: +# - camel_case_types + +# analyzer: +# exclude: +# - path/to/excluded/files/** + +# For more information about the core and recommended set of lints, see +# https://dart.dev/go/core-lints + +# For additional information about configuring this file, see +# https://dart.dev/guides/language/analysis-options diff --git a/i340/bin/i340.dart b/i340/bin/i340.dart new file mode 100644 index 00000000..2e69c557 --- /dev/null +++ b/i340/bin/i340.dart @@ -0,0 +1,5 @@ +import 'package:i340/i340.dart' as i340; + +void main(List arguments) { + print('Hello world: ${i340.calculate()}!'); +} diff --git a/i340/bun.lockb b/i340/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..6d0690d3dc017c2d6bbb1fb240481a54e66010fe GIT binary patch literal 3362 zcmY#Z)GsYA(of3F(@)JSQ%EY!;{sycoc!eMw9K4T-L(9o+{6;yG6OCq1_lNZKY_63 zsSg`?zdV=Yp2KP6v_9}1pTVq!1-E{$-v9UA%t<^zML@s~p%^&O=msc18>RrtXJ9BO z$}G-JWMFUxitsZqG%ztTFz^EDcR;=fkiG?_4+Cj&ARkD90rRANjrs=PUY4y>EREV` zaLy#!u~AJ|J-$9|sq*38Z_Ir4+a+4GDswE?IXeq5_4EUcr3ipR0R;Gf*c9jvRv^s< z#4vFn6EA?N3j(ULr$9eH&?D9q==TEZ_oP7oWD51O0|TNO$$nU%-2s}b4HV~7dGD_F zzdRKtj!XlUFu*VCHp?q;+$q^xA*fHB+6XXhq{k z?r-961@9~FTXZBUYFShv(2X#2Vd)IyY!*3}&V4#nw)qk(9Chy--sf!NOkVF4cR04y zf5Y7MJCZj_{@^jLdgU|M<>9Pv&CI)3ZRTj7#JTgYTGjuCN!!fYW+Ryk3R4(h$#d|V zQ6Ia+A=+S}XaCWB(6E!n`94vBt_+t9z z-Rz4mGWpIkcx1Kq%g)zo&5y#5WZHhK+9X|2eP}wLh0XPSK!afBg7PN}u#{>}FIuwp zg;ns3W8Kb|_N1)2%5d=eYR0CSjgsqsPn~a?cvPrVaLfP0$vg+z9nIDj`>zk&C#(2= zYLAkx+L|6~IiNu>b7AQXWH!qVo&CSxo;?0}`_9jHtNylM*{5sya1*3aR!E+nQ^1uXjq-T8mkc6&dHk@BUlY$o|$+>8>cufoL=+4q@dYND5fyG=S*A z29VS6U~}6ba?b{6rFR5MbJ-LZCF^D86_+IDRUIyhmP#&>>>P;Zg z43PaG{UCEd=7BIs3}*HOsCiR3fr3E5WfN^=7F%io^r0EteTE1h!qPjeUT1i9z*-W- z$l!JXZqsnP;2t!rU^Hq%DNfBTOD)oKttd$?%1g`%E-A{)OSe-nL?9qSW-v;*z3Dy}W|ltYW?VqI7*o z1nKKS8M=^2&?`x=a)3&u=A~!mrQ$OKO(oDUs2(KKz~&n08k^{uCR!R97^fJRS{fu< zni^V~S*BW;CYq-hm>U_Ini?3VnV6Xyr6yUTnW_s6rQ*!|JeY7=YDsd2F2o|3SbA!S zZb43B38<9|6H7@=Dow`|04VB!P6w+;aySuMk*x)qfXpS$AY?xQ4MOH38AL)D65)7Q YR6&CmDe|Bq5SvMgI#BWfX4ydr01OX)*#H0l literal 0 HcmV?d00001 diff --git a/i340/lib/i340.dart b/i340/lib/i340.dart new file mode 100644 index 00000000..f64ad726 --- /dev/null +++ b/i340/lib/i340.dart @@ -0,0 +1,3 @@ +int calculate() { + return 6 * 7; +} diff --git a/i340/package.json b/i340/package.json new file mode 100644 index 00000000..391672c6 --- /dev/null +++ b/i340/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "prisma": "^5.10.2" + } +} diff --git a/i340/prisma/generated_dart_client/client.dart b/i340/prisma/generated_dart_client/client.dart new file mode 100644 index 00000000..697793a8 --- /dev/null +++ b/i340/prisma/generated_dart_client/client.dart @@ -0,0 +1,26961 @@ +library prisma.client; // ignore_for_file: no_leading_underscores_for_library_prefixes + +import 'package:orm/dmmf.dart' as _i5; +import 'package:orm/engines/binary.dart' as _i4; +import 'package:orm/orm.dart' as _i1; + +import 'model.dart' as _i2; +import 'prisma.dart' as _i3; + +class SoggettoDelegate { + const SoggettoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Soggetto?> findUnique({ + required _i3.SoggettoWhereUniqueInput where, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto?>( + action: 'findUniqueSoggetto', + result: result, + factory: (e) => e != null ? _i2.Soggetto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Soggetto> findUniqueOrThrow({ + required _i3.SoggettoWhereUniqueInput where, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto>( + action: 'findUniqueSoggettoOrThrow', + result: result, + factory: (e) => _i2.Soggetto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Soggetto?> findFirst({ + _i3.SoggettoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoScalar, Iterable<_i3.SoggettoScalar>>? distinct, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto?>( + action: 'findFirstSoggetto', + result: result, + factory: (e) => e != null ? _i2.Soggetto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Soggetto> findFirstOrThrow({ + _i3.SoggettoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoScalar, Iterable<_i3.SoggettoScalar>>? distinct, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto>( + action: 'findFirstSoggettoOrThrow', + result: result, + factory: (e) => _i2.Soggetto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.SoggettoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoScalar, Iterable<_i3.SoggettoScalar>>? distinct, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManySoggetto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Soggetto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Soggetto> create({ + required _i1 + .PrismaUnion<_i3.SoggettoCreateInput, _i3.SoggettoUncheckedCreateInput> + data, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto>( + action: 'createOneSoggetto', + result: result, + factory: (e) => _i2.Soggetto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.SoggettoCreateManyInput, + Iterable<_i3.SoggettoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManySoggetto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Soggetto?> update({ + required _i1 + .PrismaUnion<_i3.SoggettoUpdateInput, _i3.SoggettoUncheckedUpdateInput> + data, + required _i3.SoggettoWhereUniqueInput where, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto?>( + action: 'updateOneSoggetto', + result: result, + factory: (e) => e != null ? _i2.Soggetto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.SoggettoUpdateManyMutationInput, + _i3.SoggettoUncheckedUpdateManyInput> + data, + _i3.SoggettoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManySoggetto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Soggetto> upsert({ + required _i3.SoggettoWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.SoggettoCreateInput, _i3.SoggettoUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.SoggettoUpdateInput, _i3.SoggettoUncheckedUpdateInput> + update, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto>( + action: 'upsertOneSoggetto', + result: result, + factory: (e) => _i2.Soggetto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Soggetto?> delete({ + required _i3.SoggettoWhereUniqueInput where, + _i3.SoggettoSelect? select, + _i3.SoggettoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Soggetto?>( + action: 'deleteOneSoggetto', + result: result, + factory: (e) => e != null ? _i2.Soggetto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.SoggettoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManySoggetto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.SoggettoWhereInput? where, + _i1.PrismaUnion, + _i3.SoggettoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.SoggettoScalar> + by, + _i3.SoggettoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.SoggettoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupBySoggetto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.SoggettoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateSoggetto> aggregate({ + _i3.SoggettoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateSoggettoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Soggetto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateSoggetto>( + action: 'aggregateSoggetto', + result: result, + factory: (e) => _i3.AggregateSoggetto.fromJson(e), + ); + } +} + +class PrivacyDelegate { + const PrivacyDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Privacy?> findUnique({ + required _i3.PrivacyWhereUniqueInput where, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy?>( + action: 'findUniquePrivacy', + result: result, + factory: (e) => e != null ? _i2.Privacy.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Privacy> findUniqueOrThrow({ + required _i3.PrivacyWhereUniqueInput where, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy>( + action: 'findUniquePrivacyOrThrow', + result: result, + factory: (e) => _i2.Privacy.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Privacy?> findFirst({ + _i3.PrivacyWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>, + _i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PrivacyWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PrivacyScalar, Iterable<_i3.PrivacyScalar>>? distinct, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy?>( + action: 'findFirstPrivacy', + result: result, + factory: (e) => e != null ? _i2.Privacy.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Privacy> findFirstOrThrow({ + _i3.PrivacyWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>, + _i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PrivacyWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PrivacyScalar, Iterable<_i3.PrivacyScalar>>? distinct, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy>( + action: 'findFirstPrivacyOrThrow', + result: result, + factory: (e) => _i2.Privacy.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.PrivacyWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>, + _i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PrivacyWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PrivacyScalar, Iterable<_i3.PrivacyScalar>>? distinct, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyPrivacy', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Privacy.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Privacy> create({ + _i1.PrismaUnion<_i3.PrivacyCreateInput, _i3.PrivacyUncheckedCreateInput>? + data, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy>( + action: 'createOnePrivacy', + result: result, + factory: (e) => _i2.Privacy.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.PrivacyCreateManyInput, + Iterable<_i3.PrivacyCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyPrivacy', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Privacy?> update({ + required _i1 + .PrismaUnion<_i3.PrivacyUpdateInput, _i3.PrivacyUncheckedUpdateInput> + data, + required _i3.PrivacyWhereUniqueInput where, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy?>( + action: 'updateOnePrivacy', + result: result, + factory: (e) => e != null ? _i2.Privacy.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.PrivacyUpdateManyMutationInput, + _i3.PrivacyUncheckedUpdateManyInput> + data, + _i3.PrivacyWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyPrivacy', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Privacy> upsert({ + required _i3.PrivacyWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.PrivacyCreateInput, _i3.PrivacyUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.PrivacyUpdateInput, _i3.PrivacyUncheckedUpdateInput> + update, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy>( + action: 'upsertOnePrivacy', + result: result, + factory: (e) => _i2.Privacy.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Privacy?> delete({ + required _i3.PrivacyWhereUniqueInput where, + _i3.PrivacySelect? select, + _i3.PrivacyInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Privacy?>( + action: 'deleteOnePrivacy', + result: result, + factory: (e) => e != null ? _i2.Privacy.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.PrivacyWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyPrivacy', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.PrivacyWhereInput? where, + _i1.PrismaUnion, + _i3.PrivacyOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.PrivacyScalar> by, + _i3.PrivacyScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.PrivacyGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByPrivacy', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.PrivacyGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregatePrivacy> aggregate({ + _i3.PrivacyWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>, + _i3.PrivacyOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PrivacyWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregatePrivacySelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Privacy', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregatePrivacy>( + action: 'aggregatePrivacy', + result: result, + factory: (e) => _i3.AggregatePrivacy.fromJson(e), + ); + } +} + +class SoggettoBusinessInfoDelegate { + const SoggettoBusinessInfoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.SoggettoBusinessInfo?> findUnique({ + required _i3.SoggettoBusinessInfoWhereUniqueInput where, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo?>( + action: 'findUniqueSoggettoBusinessInfo', + result: result, + factory: (e) => e != null ? _i2.SoggettoBusinessInfo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo> findUniqueOrThrow({ + required _i3.SoggettoBusinessInfoWhereUniqueInput where, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo>( + action: 'findUniqueSoggettoBusinessInfoOrThrow', + result: result, + factory: (e) => _i2.SoggettoBusinessInfo.fromJson(e), + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo?> findFirst({ + _i3.SoggettoBusinessInfoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoBusinessInfoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoBusinessInfoScalar, + Iterable<_i3.SoggettoBusinessInfoScalar>>? + distinct, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo?>( + action: 'findFirstSoggettoBusinessInfo', + result: result, + factory: (e) => e != null ? _i2.SoggettoBusinessInfo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo> findFirstOrThrow({ + _i3.SoggettoBusinessInfoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoBusinessInfoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoBusinessInfoScalar, + Iterable<_i3.SoggettoBusinessInfoScalar>>? + distinct, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo>( + action: 'findFirstSoggettoBusinessInfoOrThrow', + result: result, + factory: (e) => _i2.SoggettoBusinessInfo.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.SoggettoBusinessInfoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoBusinessInfoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.SoggettoBusinessInfoScalar, + Iterable<_i3.SoggettoBusinessInfoScalar>>? + distinct, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManySoggettoBusinessInfo', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.SoggettoBusinessInfo.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo> create({ + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoCreateInput, + _i3.SoggettoBusinessInfoUncheckedCreateInput> + data, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo>( + action: 'createOneSoggettoBusinessInfo', + result: result, + factory: (e) => _i2.SoggettoBusinessInfo.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoCreateManyInput, + Iterable<_i3.SoggettoBusinessInfoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManySoggettoBusinessInfo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo?> update({ + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoUpdateInput, + _i3.SoggettoBusinessInfoUncheckedUpdateInput> + data, + required _i3.SoggettoBusinessInfoWhereUniqueInput where, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo?>( + action: 'updateOneSoggettoBusinessInfo', + result: result, + factory: (e) => e != null ? _i2.SoggettoBusinessInfo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoUpdateManyMutationInput, + _i3.SoggettoBusinessInfoUncheckedUpdateManyInput> + data, + _i3.SoggettoBusinessInfoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManySoggettoBusinessInfo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo> upsert({ + required _i3.SoggettoBusinessInfoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoCreateInput, + _i3.SoggettoBusinessInfoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.SoggettoBusinessInfoUpdateInput, + _i3.SoggettoBusinessInfoUncheckedUpdateInput> + update, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo>( + action: 'upsertOneSoggettoBusinessInfo', + result: result, + factory: (e) => _i2.SoggettoBusinessInfo.fromJson(e), + ); + } + + _i1.ActionClient<_i2.SoggettoBusinessInfo?> delete({ + required _i3.SoggettoBusinessInfoWhereUniqueInput where, + _i3.SoggettoBusinessInfoSelect? select, + _i3.SoggettoBusinessInfoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.SoggettoBusinessInfo?>( + action: 'deleteOneSoggettoBusinessInfo', + result: result, + factory: (e) => e != null ? _i2.SoggettoBusinessInfo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.SoggettoBusinessInfoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManySoggettoBusinessInfo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> + groupBy({ + _i3.SoggettoBusinessInfoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.SoggettoBusinessInfoOrderByWithAggregationInput>, + _i3.SoggettoBusinessInfoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.SoggettoBusinessInfoScalar> + by, + _i3.SoggettoBusinessInfoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.SoggettoBusinessInfoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient< + Iterable<_i3.SoggettoBusinessInfoGroupByOutputType>>( + action: 'groupBySoggettoBusinessInfo', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.SoggettoBusinessInfoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateSoggettoBusinessInfo> aggregate({ + _i3.SoggettoBusinessInfoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>, + _i3.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.SoggettoBusinessInfoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateSoggettoBusinessInfoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'SoggettoBusinessInfo', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateSoggettoBusinessInfo>( + action: 'aggregateSoggettoBusinessInfo', + result: result, + factory: (e) => _i3.AggregateSoggettoBusinessInfo.fromJson(e), + ); + } +} + +class LegaleRappresentanteDelegate { + const LegaleRappresentanteDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.LegaleRappresentante?> findUnique({ + required _i3.LegaleRappresentanteWhereUniqueInput where, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante?>( + action: 'findUniqueLegaleRappresentante', + result: result, + factory: (e) => e != null ? _i2.LegaleRappresentante.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante> findUniqueOrThrow({ + required _i3.LegaleRappresentanteWhereUniqueInput where, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante>( + action: 'findUniqueLegaleRappresentanteOrThrow', + result: result, + factory: (e) => _i2.LegaleRappresentante.fromJson(e), + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante?> findFirst({ + _i3.LegaleRappresentanteWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>, + _i3.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LegaleRappresentanteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LegaleRappresentanteScalar, + Iterable<_i3.LegaleRappresentanteScalar>>? + distinct, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante?>( + action: 'findFirstLegaleRappresentante', + result: result, + factory: (e) => e != null ? _i2.LegaleRappresentante.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante> findFirstOrThrow({ + _i3.LegaleRappresentanteWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>, + _i3.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LegaleRappresentanteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LegaleRappresentanteScalar, + Iterable<_i3.LegaleRappresentanteScalar>>? + distinct, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante>( + action: 'findFirstLegaleRappresentanteOrThrow', + result: result, + factory: (e) => _i2.LegaleRappresentante.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.LegaleRappresentanteWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>, + _i3.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LegaleRappresentanteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LegaleRappresentanteScalar, + Iterable<_i3.LegaleRappresentanteScalar>>? + distinct, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyLegaleRappresentante', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.LegaleRappresentante.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante> create({ + required _i1.PrismaUnion<_i3.LegaleRappresentanteCreateInput, + _i3.LegaleRappresentanteUncheckedCreateInput> + data, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante>( + action: 'createOneLegaleRappresentante', + result: result, + factory: (e) => _i2.LegaleRappresentante.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.LegaleRappresentanteCreateManyInput, + Iterable<_i3.LegaleRappresentanteCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyLegaleRappresentante', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante?> update({ + required _i1.PrismaUnion<_i3.LegaleRappresentanteUpdateInput, + _i3.LegaleRappresentanteUncheckedUpdateInput> + data, + required _i3.LegaleRappresentanteWhereUniqueInput where, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante?>( + action: 'updateOneLegaleRappresentante', + result: result, + factory: (e) => e != null ? _i2.LegaleRappresentante.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.LegaleRappresentanteUpdateManyMutationInput, + _i3.LegaleRappresentanteUncheckedUpdateManyInput> + data, + _i3.LegaleRappresentanteWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyLegaleRappresentante', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante> upsert({ + required _i3.LegaleRappresentanteWhereUniqueInput where, + required _i1.PrismaUnion<_i3.LegaleRappresentanteCreateInput, + _i3.LegaleRappresentanteUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.LegaleRappresentanteUpdateInput, + _i3.LegaleRappresentanteUncheckedUpdateInput> + update, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante>( + action: 'upsertOneLegaleRappresentante', + result: result, + factory: (e) => _i2.LegaleRappresentante.fromJson(e), + ); + } + + _i1.ActionClient<_i2.LegaleRappresentante?> delete({ + required _i3.LegaleRappresentanteWhereUniqueInput where, + _i3.LegaleRappresentanteSelect? select, + _i3.LegaleRappresentanteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.LegaleRappresentante?>( + action: 'deleteOneLegaleRappresentante', + result: result, + factory: (e) => e != null ? _i2.LegaleRappresentante.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.LegaleRappresentanteWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyLegaleRappresentante', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> + groupBy({ + _i3.LegaleRappresentanteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.LegaleRappresentanteOrderByWithAggregationInput>, + _i3.LegaleRappresentanteOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.LegaleRappresentanteScalar> + by, + _i3.LegaleRappresentanteScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.LegaleRappresentanteGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient< + Iterable<_i3.LegaleRappresentanteGroupByOutputType>>( + action: 'groupByLegaleRappresentante', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.LegaleRappresentanteGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateLegaleRappresentante> aggregate({ + _i3.LegaleRappresentanteWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>, + _i3.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LegaleRappresentanteWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateLegaleRappresentanteSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'LegaleRappresentante', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateLegaleRappresentante>( + action: 'aggregateLegaleRappresentante', + result: result, + factory: (e) => _i3.AggregateLegaleRappresentante.fromJson(e), + ); + } +} + +class ReferenteDelegate { + const ReferenteDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Referente?> findUnique({ + required _i3.ReferenteWhereUniqueInput where, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente?>( + action: 'findUniqueReferente', + result: result, + factory: (e) => e != null ? _i2.Referente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Referente> findUniqueOrThrow({ + required _i3.ReferenteWhereUniqueInput where, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente>( + action: 'findUniqueReferenteOrThrow', + result: result, + factory: (e) => _i2.Referente.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Referente?> findFirst({ + _i3.ReferenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ReferenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ReferenteScalar, Iterable<_i3.ReferenteScalar>>? + distinct, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente?>( + action: 'findFirstReferente', + result: result, + factory: (e) => e != null ? _i2.Referente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Referente> findFirstOrThrow({ + _i3.ReferenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ReferenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ReferenteScalar, Iterable<_i3.ReferenteScalar>>? + distinct, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente>( + action: 'findFirstReferenteOrThrow', + result: result, + factory: (e) => _i2.Referente.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ReferenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ReferenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ReferenteScalar, Iterable<_i3.ReferenteScalar>>? + distinct, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyReferente', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Referente.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Referente> create({ + required _i1.PrismaUnion<_i3.ReferenteCreateInput, + _i3.ReferenteUncheckedCreateInput> + data, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente>( + action: 'createOneReferente', + result: result, + factory: (e) => _i2.Referente.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ReferenteCreateManyInput, + Iterable<_i3.ReferenteCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyReferente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Referente?> update({ + required _i1.PrismaUnion<_i3.ReferenteUpdateInput, + _i3.ReferenteUncheckedUpdateInput> + data, + required _i3.ReferenteWhereUniqueInput where, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente?>( + action: 'updateOneReferente', + result: result, + factory: (e) => e != null ? _i2.Referente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ReferenteUpdateManyMutationInput, + _i3.ReferenteUncheckedUpdateManyInput> + data, + _i3.ReferenteWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyReferente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Referente> upsert({ + required _i3.ReferenteWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ReferenteCreateInput, + _i3.ReferenteUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ReferenteUpdateInput, + _i3.ReferenteUncheckedUpdateInput> + update, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente>( + action: 'upsertOneReferente', + result: result, + factory: (e) => _i2.Referente.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Referente?> delete({ + required _i3.ReferenteWhereUniqueInput where, + _i3.ReferenteSelect? select, + _i3.ReferenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Referente?>( + action: 'deleteOneReferente', + result: result, + factory: (e) => e != null ? _i2.Referente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ReferenteWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyReferente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ReferenteWhereInput? where, + _i1.PrismaUnion, + _i3.ReferenteOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.ReferenteScalar> + by, + _i3.ReferenteScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ReferenteGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByReferente', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ReferenteGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateReferente> aggregate({ + _i3.ReferenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.ReferenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ReferenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateReferenteSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Referente', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateReferente>( + action: 'aggregateReferente', + result: result, + factory: (e) => _i3.AggregateReferente.fromJson(e), + ); + } +} + +class IndirizzoEmailDelegate { + const IndirizzoEmailDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.IndirizzoEmail?> findUnique({ + required _i3.IndirizzoEmailWhereUniqueInput where, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail?>( + action: 'findUniqueIndirizzoEmail', + result: result, + factory: (e) => e != null ? _i2.IndirizzoEmail.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail> findUniqueOrThrow({ + required _i3.IndirizzoEmailWhereUniqueInput where, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail>( + action: 'findUniqueIndirizzoEmailOrThrow', + result: result, + factory: (e) => _i2.IndirizzoEmail.fromJson(e), + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail?> findFirst({ + _i3.IndirizzoEmailWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>, + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IndirizzoEmailWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IndirizzoEmailScalar, + Iterable<_i3.IndirizzoEmailScalar>>? + distinct, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail?>( + action: 'findFirstIndirizzoEmail', + result: result, + factory: (e) => e != null ? _i2.IndirizzoEmail.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail> findFirstOrThrow({ + _i3.IndirizzoEmailWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>, + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IndirizzoEmailWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IndirizzoEmailScalar, + Iterable<_i3.IndirizzoEmailScalar>>? + distinct, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail>( + action: 'findFirstIndirizzoEmailOrThrow', + result: result, + factory: (e) => _i2.IndirizzoEmail.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.IndirizzoEmailWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>, + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IndirizzoEmailWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IndirizzoEmailScalar, + Iterable<_i3.IndirizzoEmailScalar>>? + distinct, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyIndirizzoEmail', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.IndirizzoEmail.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail> create({ + required _i1.PrismaUnion<_i3.IndirizzoEmailCreateInput, + _i3.IndirizzoEmailUncheckedCreateInput> + data, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail>( + action: 'createOneIndirizzoEmail', + result: result, + factory: (e) => _i2.IndirizzoEmail.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.IndirizzoEmailCreateManyInput, + Iterable<_i3.IndirizzoEmailCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyIndirizzoEmail', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail?> update({ + required _i1.PrismaUnion<_i3.IndirizzoEmailUpdateInput, + _i3.IndirizzoEmailUncheckedUpdateInput> + data, + required _i3.IndirizzoEmailWhereUniqueInput where, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail?>( + action: 'updateOneIndirizzoEmail', + result: result, + factory: (e) => e != null ? _i2.IndirizzoEmail.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.IndirizzoEmailUpdateManyMutationInput, + _i3.IndirizzoEmailUncheckedUpdateManyInput> + data, + _i3.IndirizzoEmailWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyIndirizzoEmail', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail> upsert({ + required _i3.IndirizzoEmailWhereUniqueInput where, + required _i1.PrismaUnion<_i3.IndirizzoEmailCreateInput, + _i3.IndirizzoEmailUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.IndirizzoEmailUpdateInput, + _i3.IndirizzoEmailUncheckedUpdateInput> + update, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail>( + action: 'upsertOneIndirizzoEmail', + result: result, + factory: (e) => _i2.IndirizzoEmail.fromJson(e), + ); + } + + _i1.ActionClient<_i2.IndirizzoEmail?> delete({ + required _i3.IndirizzoEmailWhereUniqueInput where, + _i3.IndirizzoEmailSelect? select, + _i3.IndirizzoEmailInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.IndirizzoEmail?>( + action: 'deleteOneIndirizzoEmail', + result: result, + factory: (e) => e != null ? _i2.IndirizzoEmail.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.IndirizzoEmailWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyIndirizzoEmail', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.IndirizzoEmailWhereInput? where, + _i1.PrismaUnion, + _i3.IndirizzoEmailOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.IndirizzoEmailScalar> + by, + _i3.IndirizzoEmailScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.IndirizzoEmailGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByIndirizzoEmail', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.IndirizzoEmailGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateIndirizzoEmail> aggregate({ + _i3.IndirizzoEmailWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>, + _i3.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IndirizzoEmailWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateIndirizzoEmailSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'IndirizzoEmail', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateIndirizzoEmail>( + action: 'aggregateIndirizzoEmail', + result: result, + factory: (e) => _i3.AggregateIndirizzoEmail.fromJson(e), + ); + } +} + +class NumeroTelefonoDelegate { + const NumeroTelefonoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.NumeroTelefono?> findUnique({ + required _i3.NumeroTelefonoWhereUniqueInput where, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono?>( + action: 'findUniqueNumeroTelefono', + result: result, + factory: (e) => e != null ? _i2.NumeroTelefono.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.NumeroTelefono> findUniqueOrThrow({ + required _i3.NumeroTelefonoWhereUniqueInput where, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono>( + action: 'findUniqueNumeroTelefonoOrThrow', + result: result, + factory: (e) => _i2.NumeroTelefono.fromJson(e), + ); + } + + _i1.ActionClient<_i2.NumeroTelefono?> findFirst({ + _i3.NumeroTelefonoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>, + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NumeroTelefonoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NumeroTelefonoScalar, + Iterable<_i3.NumeroTelefonoScalar>>? + distinct, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono?>( + action: 'findFirstNumeroTelefono', + result: result, + factory: (e) => e != null ? _i2.NumeroTelefono.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.NumeroTelefono> findFirstOrThrow({ + _i3.NumeroTelefonoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>, + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NumeroTelefonoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NumeroTelefonoScalar, + Iterable<_i3.NumeroTelefonoScalar>>? + distinct, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono>( + action: 'findFirstNumeroTelefonoOrThrow', + result: result, + factory: (e) => _i2.NumeroTelefono.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.NumeroTelefonoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>, + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NumeroTelefonoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NumeroTelefonoScalar, + Iterable<_i3.NumeroTelefonoScalar>>? + distinct, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyNumeroTelefono', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.NumeroTelefono.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.NumeroTelefono> create({ + required _i1.PrismaUnion<_i3.NumeroTelefonoCreateInput, + _i3.NumeroTelefonoUncheckedCreateInput> + data, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono>( + action: 'createOneNumeroTelefono', + result: result, + factory: (e) => _i2.NumeroTelefono.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.NumeroTelefonoCreateManyInput, + Iterable<_i3.NumeroTelefonoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyNumeroTelefono', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.NumeroTelefono?> update({ + required _i1.PrismaUnion<_i3.NumeroTelefonoUpdateInput, + _i3.NumeroTelefonoUncheckedUpdateInput> + data, + required _i3.NumeroTelefonoWhereUniqueInput where, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono?>( + action: 'updateOneNumeroTelefono', + result: result, + factory: (e) => e != null ? _i2.NumeroTelefono.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.NumeroTelefonoUpdateManyMutationInput, + _i3.NumeroTelefonoUncheckedUpdateManyInput> + data, + _i3.NumeroTelefonoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyNumeroTelefono', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.NumeroTelefono> upsert({ + required _i3.NumeroTelefonoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.NumeroTelefonoCreateInput, + _i3.NumeroTelefonoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.NumeroTelefonoUpdateInput, + _i3.NumeroTelefonoUncheckedUpdateInput> + update, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono>( + action: 'upsertOneNumeroTelefono', + result: result, + factory: (e) => _i2.NumeroTelefono.fromJson(e), + ); + } + + _i1.ActionClient<_i2.NumeroTelefono?> delete({ + required _i3.NumeroTelefonoWhereUniqueInput where, + _i3.NumeroTelefonoSelect? select, + _i3.NumeroTelefonoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.NumeroTelefono?>( + action: 'deleteOneNumeroTelefono', + result: result, + factory: (e) => e != null ? _i2.NumeroTelefono.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.NumeroTelefonoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyNumeroTelefono', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.NumeroTelefonoWhereInput? where, + _i1.PrismaUnion, + _i3.NumeroTelefonoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.NumeroTelefonoScalar> + by, + _i3.NumeroTelefonoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.NumeroTelefonoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByNumeroTelefono', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.NumeroTelefonoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateNumeroTelefono> aggregate({ + _i3.NumeroTelefonoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>, + _i3.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NumeroTelefonoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateNumeroTelefonoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'NumeroTelefono', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateNumeroTelefono>( + action: 'aggregateNumeroTelefono', + result: result, + factory: (e) => _i3.AggregateNumeroTelefono.fromJson(e), + ); + } +} + +class DomicilioDelegate { + const DomicilioDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Domicilio?> findUnique({ + required _i3.DomicilioWhereUniqueInput where, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio?>( + action: 'findUniqueDomicilio', + result: result, + factory: (e) => e != null ? _i2.Domicilio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Domicilio> findUniqueOrThrow({ + required _i3.DomicilioWhereUniqueInput where, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio>( + action: 'findUniqueDomicilioOrThrow', + result: result, + factory: (e) => _i2.Domicilio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Domicilio?> findFirst({ + _i3.DomicilioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>, + _i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.DomicilioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.DomicilioScalar, Iterable<_i3.DomicilioScalar>>? + distinct, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio?>( + action: 'findFirstDomicilio', + result: result, + factory: (e) => e != null ? _i2.Domicilio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Domicilio> findFirstOrThrow({ + _i3.DomicilioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>, + _i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.DomicilioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.DomicilioScalar, Iterable<_i3.DomicilioScalar>>? + distinct, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio>( + action: 'findFirstDomicilioOrThrow', + result: result, + factory: (e) => _i2.Domicilio.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.DomicilioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>, + _i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.DomicilioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.DomicilioScalar, Iterable<_i3.DomicilioScalar>>? + distinct, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyDomicilio', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Domicilio.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Domicilio> create({ + required _i1.PrismaUnion<_i3.DomicilioCreateInput, + _i3.DomicilioUncheckedCreateInput> + data, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio>( + action: 'createOneDomicilio', + result: result, + factory: (e) => _i2.Domicilio.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.DomicilioCreateManyInput, + Iterable<_i3.DomicilioCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyDomicilio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Domicilio?> update({ + required _i1.PrismaUnion<_i3.DomicilioUpdateInput, + _i3.DomicilioUncheckedUpdateInput> + data, + required _i3.DomicilioWhereUniqueInput where, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio?>( + action: 'updateOneDomicilio', + result: result, + factory: (e) => e != null ? _i2.Domicilio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.DomicilioUpdateManyMutationInput, + _i3.DomicilioUncheckedUpdateManyInput> + data, + _i3.DomicilioWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyDomicilio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Domicilio> upsert({ + required _i3.DomicilioWhereUniqueInput where, + required _i1.PrismaUnion<_i3.DomicilioCreateInput, + _i3.DomicilioUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.DomicilioUpdateInput, + _i3.DomicilioUncheckedUpdateInput> + update, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio>( + action: 'upsertOneDomicilio', + result: result, + factory: (e) => _i2.Domicilio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Domicilio?> delete({ + required _i3.DomicilioWhereUniqueInput where, + _i3.DomicilioSelect? select, + _i3.DomicilioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Domicilio?>( + action: 'deleteOneDomicilio', + result: result, + factory: (e) => e != null ? _i2.Domicilio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.DomicilioWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyDomicilio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.DomicilioWhereInput? where, + _i1.PrismaUnion, + _i3.DomicilioOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.DomicilioScalar> + by, + _i3.DomicilioScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.DomicilioGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByDomicilio', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.DomicilioGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateDomicilio> aggregate({ + _i3.DomicilioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>, + _i3.DomicilioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.DomicilioWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateDomicilioSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Domicilio', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateDomicilio>( + action: 'aggregateDomicilio', + result: result, + factory: (e) => _i3.AggregateDomicilio.fromJson(e), + ); + } +} + +class ServizioEwoDelegate { + const ServizioEwoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ServizioEwo?> findUnique({ + required _i3.ServizioEwoWhereUniqueInput where, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo?>( + action: 'findUniqueServizioEwo', + result: result, + factory: (e) => e != null ? _i2.ServizioEwo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ServizioEwo> findUniqueOrThrow({ + required _i3.ServizioEwoWhereUniqueInput where, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo>( + action: 'findUniqueServizioEwoOrThrow', + result: result, + factory: (e) => _i2.ServizioEwo.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ServizioEwo?> findFirst({ + _i3.ServizioEwoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ServizioEwoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ServizioEwoScalar, Iterable<_i3.ServizioEwoScalar>>? + distinct, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo?>( + action: 'findFirstServizioEwo', + result: result, + factory: (e) => e != null ? _i2.ServizioEwo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ServizioEwo> findFirstOrThrow({ + _i3.ServizioEwoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ServizioEwoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ServizioEwoScalar, Iterable<_i3.ServizioEwoScalar>>? + distinct, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo>( + action: 'findFirstServizioEwoOrThrow', + result: result, + factory: (e) => _i2.ServizioEwo.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ServizioEwoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ServizioEwoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ServizioEwoScalar, Iterable<_i3.ServizioEwoScalar>>? + distinct, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyServizioEwo', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ServizioEwo.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ServizioEwo> create({ + required _i1.PrismaUnion<_i3.ServizioEwoCreateInput, + _i3.ServizioEwoUncheckedCreateInput> + data, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo>( + action: 'createOneServizioEwo', + result: result, + factory: (e) => _i2.ServizioEwo.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ServizioEwoCreateManyInput, + Iterable<_i3.ServizioEwoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyServizioEwo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ServizioEwo?> update({ + required _i1.PrismaUnion<_i3.ServizioEwoUpdateInput, + _i3.ServizioEwoUncheckedUpdateInput> + data, + required _i3.ServizioEwoWhereUniqueInput where, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo?>( + action: 'updateOneServizioEwo', + result: result, + factory: (e) => e != null ? _i2.ServizioEwo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ServizioEwoUpdateManyMutationInput, + _i3.ServizioEwoUncheckedUpdateManyInput> + data, + _i3.ServizioEwoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyServizioEwo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ServizioEwo> upsert({ + required _i3.ServizioEwoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ServizioEwoCreateInput, + _i3.ServizioEwoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ServizioEwoUpdateInput, + _i3.ServizioEwoUncheckedUpdateInput> + update, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo>( + action: 'upsertOneServizioEwo', + result: result, + factory: (e) => _i2.ServizioEwo.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ServizioEwo?> delete({ + required _i3.ServizioEwoWhereUniqueInput where, + _i3.ServizioEwoSelect? select, + _i3.ServizioEwoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ServizioEwo?>( + action: 'deleteOneServizioEwo', + result: result, + factory: (e) => e != null ? _i2.ServizioEwo.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ServizioEwoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyServizioEwo', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ServizioEwoWhereInput? where, + _i1.PrismaUnion, + _i3.ServizioEwoOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.ServizioEwoScalar> + by, + _i3.ServizioEwoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ServizioEwoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByServizioEwo', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ServizioEwoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateServizioEwo> aggregate({ + _i3.ServizioEwoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ServizioEwoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateServizioEwoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ServizioEwo', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateServizioEwo>( + action: 'aggregateServizioEwo', + result: result, + factory: (e) => _i3.AggregateServizioEwo.fromJson(e), + ); + } +} + +class FornituraDelegate { + const FornituraDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Fornitura?> findUnique({ + required _i3.FornituraWhereUniqueInput where, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura?>( + action: 'findUniqueFornitura', + result: result, + factory: (e) => e != null ? _i2.Fornitura.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Fornitura> findUniqueOrThrow({ + required _i3.FornituraWhereUniqueInput where, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura>( + action: 'findUniqueFornituraOrThrow', + result: result, + factory: (e) => _i2.Fornitura.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitura?> findFirst({ + _i3.FornituraWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraScalar, Iterable<_i3.FornituraScalar>>? + distinct, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura?>( + action: 'findFirstFornitura', + result: result, + factory: (e) => e != null ? _i2.Fornitura.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Fornitura> findFirstOrThrow({ + _i3.FornituraWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraScalar, Iterable<_i3.FornituraScalar>>? + distinct, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura>( + action: 'findFirstFornituraOrThrow', + result: result, + factory: (e) => _i2.Fornitura.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.FornituraWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraScalar, Iterable<_i3.FornituraScalar>>? + distinct, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyFornitura', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Fornitura.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Fornitura> create({ + required _i1.PrismaUnion<_i3.FornituraCreateInput, + _i3.FornituraUncheckedCreateInput> + data, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura>( + action: 'createOneFornitura', + result: result, + factory: (e) => _i2.Fornitura.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.FornituraCreateManyInput, + Iterable<_i3.FornituraCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyFornitura', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitura?> update({ + required _i1.PrismaUnion<_i3.FornituraUpdateInput, + _i3.FornituraUncheckedUpdateInput> + data, + required _i3.FornituraWhereUniqueInput where, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura?>( + action: 'updateOneFornitura', + result: result, + factory: (e) => e != null ? _i2.Fornitura.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.FornituraUpdateManyMutationInput, + _i3.FornituraUncheckedUpdateManyInput> + data, + _i3.FornituraWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyFornitura', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitura> upsert({ + required _i3.FornituraWhereUniqueInput where, + required _i1.PrismaUnion<_i3.FornituraCreateInput, + _i3.FornituraUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.FornituraUpdateInput, + _i3.FornituraUncheckedUpdateInput> + update, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura>( + action: 'upsertOneFornitura', + result: result, + factory: (e) => _i2.Fornitura.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitura?> delete({ + required _i3.FornituraWhereUniqueInput where, + _i3.FornituraSelect? select, + _i3.FornituraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitura?>( + action: 'deleteOneFornitura', + result: result, + factory: (e) => e != null ? _i2.Fornitura.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.FornituraWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyFornitura', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.FornituraWhereInput? where, + _i1.PrismaUnion, + _i3.FornituraOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.FornituraScalar> + by, + _i3.FornituraScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.FornituraGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByFornitura', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.FornituraGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateFornitura> aggregate({ + _i3.FornituraWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateFornituraSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitura', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateFornitura>( + action: 'aggregateFornitura', + result: result, + factory: (e) => _i3.AggregateFornitura.fromJson(e), + ); + } +} + +class FornituraLuceDelegate { + const FornituraLuceDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.FornituraLuce?> findUnique({ + required _i3.FornituraLuceWhereUniqueInput where, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce?>( + action: 'findUniqueFornituraLuce', + result: result, + factory: (e) => e != null ? _i2.FornituraLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.FornituraLuce> findUniqueOrThrow({ + required _i3.FornituraLuceWhereUniqueInput where, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce>( + action: 'findUniqueFornituraLuceOrThrow', + result: result, + factory: (e) => _i2.FornituraLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraLuce?> findFirst({ + _i3.FornituraLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraLuceScalar, Iterable<_i3.FornituraLuceScalar>>? + distinct, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce?>( + action: 'findFirstFornituraLuce', + result: result, + factory: (e) => e != null ? _i2.FornituraLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.FornituraLuce> findFirstOrThrow({ + _i3.FornituraLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraLuceScalar, Iterable<_i3.FornituraLuceScalar>>? + distinct, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce>( + action: 'findFirstFornituraLuceOrThrow', + result: result, + factory: (e) => _i2.FornituraLuce.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.FornituraLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraLuceScalar, Iterable<_i3.FornituraLuceScalar>>? + distinct, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyFornituraLuce', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.FornituraLuce.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.FornituraLuce> create({ + required _i1.PrismaUnion<_i3.FornituraLuceCreateInput, + _i3.FornituraLuceUncheckedCreateInput> + data, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce>( + action: 'createOneFornituraLuce', + result: result, + factory: (e) => _i2.FornituraLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.FornituraLuceCreateManyInput, + Iterable<_i3.FornituraLuceCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyFornituraLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraLuce?> update({ + required _i1.PrismaUnion<_i3.FornituraLuceUpdateInput, + _i3.FornituraLuceUncheckedUpdateInput> + data, + required _i3.FornituraLuceWhereUniqueInput where, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce?>( + action: 'updateOneFornituraLuce', + result: result, + factory: (e) => e != null ? _i2.FornituraLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.FornituraLuceUpdateManyMutationInput, + _i3.FornituraLuceUncheckedUpdateManyInput> + data, + _i3.FornituraLuceWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyFornituraLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraLuce> upsert({ + required _i3.FornituraLuceWhereUniqueInput where, + required _i1.PrismaUnion<_i3.FornituraLuceCreateInput, + _i3.FornituraLuceUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.FornituraLuceUpdateInput, + _i3.FornituraLuceUncheckedUpdateInput> + update, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce>( + action: 'upsertOneFornituraLuce', + result: result, + factory: (e) => _i2.FornituraLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraLuce?> delete({ + required _i3.FornituraLuceWhereUniqueInput where, + _i3.FornituraLuceSelect? select, + _i3.FornituraLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraLuce?>( + action: 'deleteOneFornituraLuce', + result: result, + factory: (e) => e != null ? _i2.FornituraLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.FornituraLuceWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyFornituraLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.FornituraLuceWhereInput? where, + _i1.PrismaUnion, + _i3.FornituraLuceOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.FornituraLuceScalar> + by, + _i3.FornituraLuceScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.FornituraLuceGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByFornituraLuce', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.FornituraLuceGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateFornituraLuce> aggregate({ + _i3.FornituraLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateFornituraLuceSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraLuce', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateFornituraLuce>( + action: 'aggregateFornituraLuce', + result: result, + factory: (e) => _i3.AggregateFornituraLuce.fromJson(e), + ); + } +} + +class ConsumoAnnuoLuceDelegate { + const ConsumoAnnuoLuceDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ConsumoAnnuoLuce?> findUnique({ + required _i3.ConsumoAnnuoLuceWhereUniqueInput where, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce?>( + action: 'findUniqueConsumoAnnuoLuce', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce> findUniqueOrThrow({ + required _i3.ConsumoAnnuoLuceWhereUniqueInput where, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce>( + action: 'findUniqueConsumoAnnuoLuceOrThrow', + result: result, + factory: (e) => _i2.ConsumoAnnuoLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce?> findFirst({ + _i3.ConsumoAnnuoLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoLuceScalar, + Iterable<_i3.ConsumoAnnuoLuceScalar>>? + distinct, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce?>( + action: 'findFirstConsumoAnnuoLuce', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce> findFirstOrThrow({ + _i3.ConsumoAnnuoLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoLuceScalar, + Iterable<_i3.ConsumoAnnuoLuceScalar>>? + distinct, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce>( + action: 'findFirstConsumoAnnuoLuceOrThrow', + result: result, + factory: (e) => _i2.ConsumoAnnuoLuce.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ConsumoAnnuoLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoLuceScalar, + Iterable<_i3.ConsumoAnnuoLuceScalar>>? + distinct, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyConsumoAnnuoLuce', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ConsumoAnnuoLuce.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce> create({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceCreateInput, + _i3.ConsumoAnnuoLuceUncheckedCreateInput> + data, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce>( + action: 'createOneConsumoAnnuoLuce', + result: result, + factory: (e) => _i2.ConsumoAnnuoLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceCreateManyInput, + Iterable<_i3.ConsumoAnnuoLuceCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyConsumoAnnuoLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce?> update({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceUpdateInput, + _i3.ConsumoAnnuoLuceUncheckedUpdateInput> + data, + required _i3.ConsumoAnnuoLuceWhereUniqueInput where, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce?>( + action: 'updateOneConsumoAnnuoLuce', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceUpdateManyMutationInput, + _i3.ConsumoAnnuoLuceUncheckedUpdateManyInput> + data, + _i3.ConsumoAnnuoLuceWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyConsumoAnnuoLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce> upsert({ + required _i3.ConsumoAnnuoLuceWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceCreateInput, + _i3.ConsumoAnnuoLuceUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ConsumoAnnuoLuceUpdateInput, + _i3.ConsumoAnnuoLuceUncheckedUpdateInput> + update, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce>( + action: 'upsertOneConsumoAnnuoLuce', + result: result, + factory: (e) => _i2.ConsumoAnnuoLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoLuce?> delete({ + required _i3.ConsumoAnnuoLuceWhereUniqueInput where, + _i3.ConsumoAnnuoLuceSelect? select, + _i3.ConsumoAnnuoLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoLuce?>( + action: 'deleteOneConsumoAnnuoLuce', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ConsumoAnnuoLuceWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyConsumoAnnuoLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ConsumoAnnuoLuceWhereInput? where, + _i1.PrismaUnion, + _i3.ConsumoAnnuoLuceOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ConsumoAnnuoLuceScalar> + by, + _i3.ConsumoAnnuoLuceScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ConsumoAnnuoLuceGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByConsumoAnnuoLuce', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ConsumoAnnuoLuceGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateConsumoAnnuoLuce> aggregate({ + _i3.ConsumoAnnuoLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateConsumoAnnuoLuceSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoLuce', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateConsumoAnnuoLuce>( + action: 'aggregateConsumoAnnuoLuce', + result: result, + factory: (e) => _i3.AggregateConsumoAnnuoLuce.fromJson(e), + ); + } +} + +class FornituraGasDelegate { + const FornituraGasDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.FornituraGas?> findUnique({ + required _i3.FornituraGasWhereUniqueInput where, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas?>( + action: 'findUniqueFornituraGas', + result: result, + factory: (e) => e != null ? _i2.FornituraGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.FornituraGas> findUniqueOrThrow({ + required _i3.FornituraGasWhereUniqueInput where, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas>( + action: 'findUniqueFornituraGasOrThrow', + result: result, + factory: (e) => _i2.FornituraGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraGas?> findFirst({ + _i3.FornituraGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraGasScalar, Iterable<_i3.FornituraGasScalar>>? + distinct, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas?>( + action: 'findFirstFornituraGas', + result: result, + factory: (e) => e != null ? _i2.FornituraGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.FornituraGas> findFirstOrThrow({ + _i3.FornituraGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraGasScalar, Iterable<_i3.FornituraGasScalar>>? + distinct, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas>( + action: 'findFirstFornituraGasOrThrow', + result: result, + factory: (e) => _i2.FornituraGas.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.FornituraGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornituraGasScalar, Iterable<_i3.FornituraGasScalar>>? + distinct, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyFornituraGas', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.FornituraGas.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.FornituraGas> create({ + required _i1.PrismaUnion<_i3.FornituraGasCreateInput, + _i3.FornituraGasUncheckedCreateInput> + data, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas>( + action: 'createOneFornituraGas', + result: result, + factory: (e) => _i2.FornituraGas.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.FornituraGasCreateManyInput, + Iterable<_i3.FornituraGasCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyFornituraGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraGas?> update({ + required _i1.PrismaUnion<_i3.FornituraGasUpdateInput, + _i3.FornituraGasUncheckedUpdateInput> + data, + required _i3.FornituraGasWhereUniqueInput where, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas?>( + action: 'updateOneFornituraGas', + result: result, + factory: (e) => e != null ? _i2.FornituraGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.FornituraGasUpdateManyMutationInput, + _i3.FornituraGasUncheckedUpdateManyInput> + data, + _i3.FornituraGasWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyFornituraGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraGas> upsert({ + required _i3.FornituraGasWhereUniqueInput where, + required _i1.PrismaUnion<_i3.FornituraGasCreateInput, + _i3.FornituraGasUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.FornituraGasUpdateInput, + _i3.FornituraGasUncheckedUpdateInput> + update, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas>( + action: 'upsertOneFornituraGas', + result: result, + factory: (e) => _i2.FornituraGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.FornituraGas?> delete({ + required _i3.FornituraGasWhereUniqueInput where, + _i3.FornituraGasSelect? select, + _i3.FornituraGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.FornituraGas?>( + action: 'deleteOneFornituraGas', + result: result, + factory: (e) => e != null ? _i2.FornituraGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.FornituraGasWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyFornituraGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.FornituraGasWhereInput? where, + _i1.PrismaUnion, + _i3.FornituraGasOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.FornituraGasScalar> + by, + _i3.FornituraGasScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.FornituraGasGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByFornituraGas', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.FornituraGasGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateFornituraGas> aggregate({ + _i3.FornituraGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornituraGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornituraGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateFornituraGasSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'FornituraGas', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateFornituraGas>( + action: 'aggregateFornituraGas', + result: result, + factory: (e) => _i3.AggregateFornituraGas.fromJson(e), + ); + } +} + +class ConsumoAnnuoGasDelegate { + const ConsumoAnnuoGasDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ConsumoAnnuoGas?> findUnique({ + required _i3.ConsumoAnnuoGasWhereUniqueInput where, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas?>( + action: 'findUniqueConsumoAnnuoGas', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas> findUniqueOrThrow({ + required _i3.ConsumoAnnuoGasWhereUniqueInput where, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas>( + action: 'findUniqueConsumoAnnuoGasOrThrow', + result: result, + factory: (e) => _i2.ConsumoAnnuoGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas?> findFirst({ + _i3.ConsumoAnnuoGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoGasScalar, + Iterable<_i3.ConsumoAnnuoGasScalar>>? + distinct, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas?>( + action: 'findFirstConsumoAnnuoGas', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas> findFirstOrThrow({ + _i3.ConsumoAnnuoGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoGasScalar, + Iterable<_i3.ConsumoAnnuoGasScalar>>? + distinct, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas>( + action: 'findFirstConsumoAnnuoGasOrThrow', + result: result, + factory: (e) => _i2.ConsumoAnnuoGas.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ConsumoAnnuoGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ConsumoAnnuoGasScalar, + Iterable<_i3.ConsumoAnnuoGasScalar>>? + distinct, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyConsumoAnnuoGas', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ConsumoAnnuoGas.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas> create({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasCreateInput, + _i3.ConsumoAnnuoGasUncheckedCreateInput> + data, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas>( + action: 'createOneConsumoAnnuoGas', + result: result, + factory: (e) => _i2.ConsumoAnnuoGas.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasCreateManyInput, + Iterable<_i3.ConsumoAnnuoGasCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyConsumoAnnuoGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas?> update({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasUpdateInput, + _i3.ConsumoAnnuoGasUncheckedUpdateInput> + data, + required _i3.ConsumoAnnuoGasWhereUniqueInput where, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas?>( + action: 'updateOneConsumoAnnuoGas', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasUpdateManyMutationInput, + _i3.ConsumoAnnuoGasUncheckedUpdateManyInput> + data, + _i3.ConsumoAnnuoGasWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyConsumoAnnuoGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas> upsert({ + required _i3.ConsumoAnnuoGasWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasCreateInput, + _i3.ConsumoAnnuoGasUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ConsumoAnnuoGasUpdateInput, + _i3.ConsumoAnnuoGasUncheckedUpdateInput> + update, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas>( + action: 'upsertOneConsumoAnnuoGas', + result: result, + factory: (e) => _i2.ConsumoAnnuoGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ConsumoAnnuoGas?> delete({ + required _i3.ConsumoAnnuoGasWhereUniqueInput where, + _i3.ConsumoAnnuoGasSelect? select, + _i3.ConsumoAnnuoGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ConsumoAnnuoGas?>( + action: 'deleteOneConsumoAnnuoGas', + result: result, + factory: (e) => e != null ? _i2.ConsumoAnnuoGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ConsumoAnnuoGasWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyConsumoAnnuoGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ConsumoAnnuoGasWhereInput? where, + _i1.PrismaUnion, + _i3.ConsumoAnnuoGasOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ConsumoAnnuoGasScalar> + by, + _i3.ConsumoAnnuoGasScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ConsumoAnnuoGasGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByConsumoAnnuoGas', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ConsumoAnnuoGasGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateConsumoAnnuoGas> aggregate({ + _i3.ConsumoAnnuoGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ConsumoAnnuoGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateConsumoAnnuoGasSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ConsumoAnnuoGas', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateConsumoAnnuoGas>( + action: 'aggregateConsumoAnnuoGas', + result: result, + factory: (e) => _i3.AggregateConsumoAnnuoGas.fromJson(e), + ); + } +} + +class ContrattoDelegate { + const ContrattoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Contratto?> findUnique({ + required _i3.ContrattoWhereUniqueInput where, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto?>( + action: 'findUniqueContratto', + result: result, + factory: (e) => e != null ? _i2.Contratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Contratto> findUniqueOrThrow({ + required _i3.ContrattoWhereUniqueInput where, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto>( + action: 'findUniqueContrattoOrThrow', + result: result, + factory: (e) => _i2.Contratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Contratto?> findFirst({ + _i3.ContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoScalar, Iterable<_i3.ContrattoScalar>>? + distinct, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto?>( + action: 'findFirstContratto', + result: result, + factory: (e) => e != null ? _i2.Contratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Contratto> findFirstOrThrow({ + _i3.ContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoScalar, Iterable<_i3.ContrattoScalar>>? + distinct, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto>( + action: 'findFirstContrattoOrThrow', + result: result, + factory: (e) => _i2.Contratto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoScalar, Iterable<_i3.ContrattoScalar>>? + distinct, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyContratto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Contratto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Contratto> create({ + required _i1.PrismaUnion<_i3.ContrattoCreateInput, + _i3.ContrattoUncheckedCreateInput> + data, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto>( + action: 'createOneContratto', + result: result, + factory: (e) => _i2.Contratto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ContrattoCreateManyInput, + Iterable<_i3.ContrattoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Contratto?> update({ + required _i1.PrismaUnion<_i3.ContrattoUpdateInput, + _i3.ContrattoUncheckedUpdateInput> + data, + required _i3.ContrattoWhereUniqueInput where, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto?>( + action: 'updateOneContratto', + result: result, + factory: (e) => e != null ? _i2.Contratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ContrattoUpdateManyMutationInput, + _i3.ContrattoUncheckedUpdateManyInput> + data, + _i3.ContrattoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Contratto> upsert({ + required _i3.ContrattoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ContrattoCreateInput, + _i3.ContrattoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ContrattoUpdateInput, + _i3.ContrattoUncheckedUpdateInput> + update, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto>( + action: 'upsertOneContratto', + result: result, + factory: (e) => _i2.Contratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Contratto?> delete({ + required _i3.ContrattoWhereUniqueInput where, + _i3.ContrattoSelect? select, + _i3.ContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Contratto?>( + action: 'deleteOneContratto', + result: result, + factory: (e) => e != null ? _i2.Contratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ContrattoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ContrattoWhereInput? where, + _i1.PrismaUnion, + _i3.ContrattoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.ContrattoScalar> + by, + _i3.ContrattoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ContrattoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByContratto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ContrattoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateContratto> aggregate({ + _i3.ContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateContrattoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Contratto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateContratto>( + action: 'aggregateContratto', + result: result, + factory: (e) => _i3.AggregateContratto.fromJson(e), + ); + } +} + +class ModuloContrattoDelegate { + const ModuloContrattoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ModuloContratto?> findUnique({ + required _i3.ModuloContrattoWhereUniqueInput where, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto?>( + action: 'findUniqueModuloContratto', + result: result, + factory: (e) => e != null ? _i2.ModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ModuloContratto> findUniqueOrThrow({ + required _i3.ModuloContrattoWhereUniqueInput where, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto>( + action: 'findUniqueModuloContrattoOrThrow', + result: result, + factory: (e) => _i2.ModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ModuloContratto?> findFirst({ + _i3.ModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ModuloContrattoScalar, + Iterable<_i3.ModuloContrattoScalar>>? + distinct, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto?>( + action: 'findFirstModuloContratto', + result: result, + factory: (e) => e != null ? _i2.ModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ModuloContratto> findFirstOrThrow({ + _i3.ModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ModuloContrattoScalar, + Iterable<_i3.ModuloContrattoScalar>>? + distinct, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto>( + action: 'findFirstModuloContrattoOrThrow', + result: result, + factory: (e) => _i2.ModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ModuloContrattoScalar, + Iterable<_i3.ModuloContrattoScalar>>? + distinct, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyModuloContratto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ModuloContratto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ModuloContratto> create({ + required _i1.PrismaUnion<_i3.ModuloContrattoCreateInput, + _i3.ModuloContrattoUncheckedCreateInput> + data, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto>( + action: 'createOneModuloContratto', + result: result, + factory: (e) => _i2.ModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ModuloContrattoCreateManyInput, + Iterable<_i3.ModuloContrattoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ModuloContratto?> update({ + required _i1.PrismaUnion<_i3.ModuloContrattoUpdateInput, + _i3.ModuloContrattoUncheckedUpdateInput> + data, + required _i3.ModuloContrattoWhereUniqueInput where, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto?>( + action: 'updateOneModuloContratto', + result: result, + factory: (e) => e != null ? _i2.ModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ModuloContrattoUpdateManyMutationInput, + _i3.ModuloContrattoUncheckedUpdateManyInput> + data, + _i3.ModuloContrattoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ModuloContratto> upsert({ + required _i3.ModuloContrattoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ModuloContrattoCreateInput, + _i3.ModuloContrattoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ModuloContrattoUpdateInput, + _i3.ModuloContrattoUncheckedUpdateInput> + update, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto>( + action: 'upsertOneModuloContratto', + result: result, + factory: (e) => _i2.ModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ModuloContratto?> delete({ + required _i3.ModuloContrattoWhereUniqueInput where, + _i3.ModuloContrattoSelect? select, + _i3.ModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ModuloContratto?>( + action: 'deleteOneModuloContratto', + result: result, + factory: (e) => e != null ? _i2.ModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ModuloContrattoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ModuloContrattoWhereInput? where, + _i1.PrismaUnion, + _i3.ModuloContrattoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ModuloContrattoScalar> + by, + _i3.ModuloContrattoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ModuloContrattoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByModuloContratto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ModuloContrattoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateModuloContratto> aggregate({ + _i3.ModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateModuloContrattoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ModuloContratto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateModuloContratto>( + action: 'aggregateModuloContratto', + result: result, + factory: (e) => _i3.AggregateModuloContratto.fromJson(e), + ); + } +} + +class TipoModuloContrattoDelegate { + const TipoModuloContrattoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.TipoModuloContratto?> findUnique({ + required _i3.TipoModuloContrattoWhereUniqueInput where, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto?>( + action: 'findUniqueTipoModuloContratto', + result: result, + factory: (e) => e != null ? _i2.TipoModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto> findUniqueOrThrow({ + required _i3.TipoModuloContrattoWhereUniqueInput where, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto>( + action: 'findUniqueTipoModuloContrattoOrThrow', + result: result, + factory: (e) => _i2.TipoModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto?> findFirst({ + _i3.TipoModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoModuloContrattoScalar, + Iterable<_i3.TipoModuloContrattoScalar>>? + distinct, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto?>( + action: 'findFirstTipoModuloContratto', + result: result, + factory: (e) => e != null ? _i2.TipoModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto> findFirstOrThrow({ + _i3.TipoModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoModuloContrattoScalar, + Iterable<_i3.TipoModuloContrattoScalar>>? + distinct, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto>( + action: 'findFirstTipoModuloContrattoOrThrow', + result: result, + factory: (e) => _i2.TipoModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.TipoModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoModuloContrattoScalar, + Iterable<_i3.TipoModuloContrattoScalar>>? + distinct, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyTipoModuloContratto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.TipoModuloContratto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto> create({ + required _i1.PrismaUnion<_i3.TipoModuloContrattoCreateInput, + _i3.TipoModuloContrattoUncheckedCreateInput> + data, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto>( + action: 'createOneTipoModuloContratto', + result: result, + factory: (e) => _i2.TipoModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.TipoModuloContrattoCreateManyInput, + Iterable<_i3.TipoModuloContrattoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyTipoModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto?> update({ + required _i1.PrismaUnion<_i3.TipoModuloContrattoUpdateInput, + _i3.TipoModuloContrattoUncheckedUpdateInput> + data, + required _i3.TipoModuloContrattoWhereUniqueInput where, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto?>( + action: 'updateOneTipoModuloContratto', + result: result, + factory: (e) => e != null ? _i2.TipoModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.TipoModuloContrattoUpdateManyMutationInput, + _i3.TipoModuloContrattoUncheckedUpdateManyInput> + data, + _i3.TipoModuloContrattoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyTipoModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto> upsert({ + required _i3.TipoModuloContrattoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.TipoModuloContrattoCreateInput, + _i3.TipoModuloContrattoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.TipoModuloContrattoUpdateInput, + _i3.TipoModuloContrattoUncheckedUpdateInput> + update, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto>( + action: 'upsertOneTipoModuloContratto', + result: result, + factory: (e) => _i2.TipoModuloContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoModuloContratto?> delete({ + required _i3.TipoModuloContrattoWhereUniqueInput where, + _i3.TipoModuloContrattoSelect? select, + _i3.TipoModuloContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoModuloContratto?>( + action: 'deleteOneTipoModuloContratto', + result: result, + factory: (e) => e != null ? _i2.TipoModuloContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.TipoModuloContrattoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyTipoModuloContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.TipoModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.TipoModuloContrattoOrderByWithAggregationInput>, + _i3.TipoModuloContrattoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.TipoModuloContrattoScalar> + by, + _i3.TipoModuloContrattoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.TipoModuloContrattoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByTipoModuloContratto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.TipoModuloContrattoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateTipoModuloContratto> aggregate({ + _i3.TipoModuloContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoModuloContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateTipoModuloContrattoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoModuloContratto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateTipoModuloContratto>( + action: 'aggregateTipoModuloContratto', + result: result, + factory: (e) => _i3.AggregateTipoModuloContratto.fromJson(e), + ); + } +} + +class StatoContrattoDelegate { + const StatoContrattoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.StatoContratto?> findUnique({ + required _i3.StatoContrattoWhereUniqueInput where, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto?>( + action: 'findUniqueStatoContratto', + result: result, + factory: (e) => e != null ? _i2.StatoContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoContratto> findUniqueOrThrow({ + required _i3.StatoContrattoWhereUniqueInput where, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto>( + action: 'findUniqueStatoContrattoOrThrow', + result: result, + factory: (e) => _i2.StatoContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoContratto?> findFirst({ + _i3.StatoContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoContrattoScalar, + Iterable<_i3.StatoContrattoScalar>>? + distinct, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto?>( + action: 'findFirstStatoContratto', + result: result, + factory: (e) => e != null ? _i2.StatoContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoContratto> findFirstOrThrow({ + _i3.StatoContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoContrattoScalar, + Iterable<_i3.StatoContrattoScalar>>? + distinct, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto>( + action: 'findFirstStatoContrattoOrThrow', + result: result, + factory: (e) => _i2.StatoContratto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.StatoContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoContrattoScalar, + Iterable<_i3.StatoContrattoScalar>>? + distinct, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyStatoContratto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.StatoContratto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.StatoContratto> create({ + required _i1.PrismaUnion<_i3.StatoContrattoCreateInput, + _i3.StatoContrattoUncheckedCreateInput> + data, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto>( + action: 'createOneStatoContratto', + result: result, + factory: (e) => _i2.StatoContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.StatoContrattoCreateManyInput, + Iterable<_i3.StatoContrattoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyStatoContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoContratto?> update({ + required _i1.PrismaUnion<_i3.StatoContrattoUpdateInput, + _i3.StatoContrattoUncheckedUpdateInput> + data, + required _i3.StatoContrattoWhereUniqueInput where, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto?>( + action: 'updateOneStatoContratto', + result: result, + factory: (e) => e != null ? _i2.StatoContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.StatoContrattoUpdateManyMutationInput, + _i3.StatoContrattoUncheckedUpdateManyInput> + data, + _i3.StatoContrattoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyStatoContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoContratto> upsert({ + required _i3.StatoContrattoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.StatoContrattoCreateInput, + _i3.StatoContrattoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.StatoContrattoUpdateInput, + _i3.StatoContrattoUncheckedUpdateInput> + update, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto>( + action: 'upsertOneStatoContratto', + result: result, + factory: (e) => _i2.StatoContratto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoContratto?> delete({ + required _i3.StatoContrattoWhereUniqueInput where, + _i3.StatoContrattoSelect? select, + _i3.StatoContrattoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoContratto?>( + action: 'deleteOneStatoContratto', + result: result, + factory: (e) => e != null ? _i2.StatoContratto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.StatoContrattoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyStatoContratto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.StatoContrattoWhereInput? where, + _i1.PrismaUnion, + _i3.StatoContrattoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.StatoContrattoScalar> + by, + _i3.StatoContrattoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.StatoContrattoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByStatoContratto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.StatoContrattoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateStatoContratto> aggregate({ + _i3.StatoContrattoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoContrattoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateStatoContrattoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoContratto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateStatoContratto>( + action: 'aggregateStatoContratto', + result: result, + factory: (e) => _i3.AggregateStatoContratto.fromJson(e), + ); + } +} + +class OffertaDelegate { + const OffertaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Offerta?> findUnique({ + required _i3.OffertaWhereUniqueInput where, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta?>( + action: 'findUniqueOfferta', + result: result, + factory: (e) => e != null ? _i2.Offerta.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Offerta> findUniqueOrThrow({ + required _i3.OffertaWhereUniqueInput where, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta>( + action: 'findUniqueOffertaOrThrow', + result: result, + factory: (e) => _i2.Offerta.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Offerta?> findFirst({ + _i3.OffertaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OffertaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OffertaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OffertaScalar, Iterable<_i3.OffertaScalar>>? distinct, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta?>( + action: 'findFirstOfferta', + result: result, + factory: (e) => e != null ? _i2.Offerta.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Offerta> findFirstOrThrow({ + _i3.OffertaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OffertaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OffertaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OffertaScalar, Iterable<_i3.OffertaScalar>>? distinct, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta>( + action: 'findFirstOffertaOrThrow', + result: result, + factory: (e) => _i2.Offerta.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.OffertaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OffertaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OffertaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OffertaScalar, Iterable<_i3.OffertaScalar>>? distinct, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyOfferta', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Offerta.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Offerta> create({ + required _i1 + .PrismaUnion<_i3.OffertaCreateInput, _i3.OffertaUncheckedCreateInput> + data, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta>( + action: 'createOneOfferta', + result: result, + factory: (e) => _i2.Offerta.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.OffertaCreateManyInput, + Iterable<_i3.OffertaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyOfferta', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Offerta?> update({ + required _i1 + .PrismaUnion<_i3.OffertaUpdateInput, _i3.OffertaUncheckedUpdateInput> + data, + required _i3.OffertaWhereUniqueInput where, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta?>( + action: 'updateOneOfferta', + result: result, + factory: (e) => e != null ? _i2.Offerta.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.OffertaUpdateManyMutationInput, + _i3.OffertaUncheckedUpdateManyInput> + data, + _i3.OffertaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyOfferta', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Offerta> upsert({ + required _i3.OffertaWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.OffertaCreateInput, _i3.OffertaUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.OffertaUpdateInput, _i3.OffertaUncheckedUpdateInput> + update, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta>( + action: 'upsertOneOfferta', + result: result, + factory: (e) => _i2.Offerta.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Offerta?> delete({ + required _i3.OffertaWhereUniqueInput where, + _i3.OffertaSelect? select, + _i3.OffertaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Offerta?>( + action: 'deleteOneOfferta', + result: result, + factory: (e) => e != null ? _i2.Offerta.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.OffertaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyOfferta', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.OffertaWhereInput? where, + _i1.PrismaUnion, + _i3.OffertaOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.OffertaScalar> by, + _i3.OffertaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.OffertaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByOfferta', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.OffertaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateOfferta> aggregate({ + _i3.OffertaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OffertaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OffertaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateOffertaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Offerta', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateOfferta>( + action: 'aggregateOfferta', + result: result, + factory: (e) => _i3.AggregateOfferta.fromJson(e), + ); + } +} + +class PraticaDelegate { + const PraticaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Pratica?> findUnique({ + required _i3.PraticaWhereUniqueInput where, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica?>( + action: 'findUniquePratica', + result: result, + factory: (e) => e != null ? _i2.Pratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Pratica> findUniqueOrThrow({ + required _i3.PraticaWhereUniqueInput where, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica>( + action: 'findUniquePraticaOrThrow', + result: result, + factory: (e) => _i2.Pratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Pratica?> findFirst({ + _i3.PraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.PraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PraticaScalar, Iterable<_i3.PraticaScalar>>? distinct, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica?>( + action: 'findFirstPratica', + result: result, + factory: (e) => e != null ? _i2.Pratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Pratica> findFirstOrThrow({ + _i3.PraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.PraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PraticaScalar, Iterable<_i3.PraticaScalar>>? distinct, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica>( + action: 'findFirstPraticaOrThrow', + result: result, + factory: (e) => _i2.Pratica.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.PraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.PraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.PraticaScalar, Iterable<_i3.PraticaScalar>>? distinct, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyPratica', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Pratica.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Pratica> create({ + required _i1 + .PrismaUnion<_i3.PraticaCreateInput, _i3.PraticaUncheckedCreateInput> + data, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica>( + action: 'createOnePratica', + result: result, + factory: (e) => _i2.Pratica.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.PraticaCreateManyInput, + Iterable<_i3.PraticaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Pratica?> update({ + required _i1 + .PrismaUnion<_i3.PraticaUpdateInput, _i3.PraticaUncheckedUpdateInput> + data, + required _i3.PraticaWhereUniqueInput where, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica?>( + action: 'updateOnePratica', + result: result, + factory: (e) => e != null ? _i2.Pratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.PraticaUpdateManyMutationInput, + _i3.PraticaUncheckedUpdateManyInput> + data, + _i3.PraticaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Pratica> upsert({ + required _i3.PraticaWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.PraticaCreateInput, _i3.PraticaUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.PraticaUpdateInput, _i3.PraticaUncheckedUpdateInput> + update, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica>( + action: 'upsertOnePratica', + result: result, + factory: (e) => _i2.Pratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Pratica?> delete({ + required _i3.PraticaWhereUniqueInput where, + _i3.PraticaSelect? select, + _i3.PraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Pratica?>( + action: 'deleteOnePratica', + result: result, + factory: (e) => e != null ? _i2.Pratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.PraticaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.PraticaWhereInput? where, + _i1.PrismaUnion, + _i3.PraticaOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.PraticaScalar> by, + _i3.PraticaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.PraticaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByPratica', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.PraticaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregatePratica> aggregate({ + _i3.PraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.PraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.PraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregatePraticaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Pratica', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregatePratica>( + action: 'aggregatePratica', + result: result, + factory: (e) => _i3.AggregatePratica.fromJson(e), + ); + } +} + +class TipoPraticaDelegate { + const TipoPraticaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.TipoPratica?> findUnique({ + required _i3.TipoPraticaWhereUniqueInput where, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica?>( + action: 'findUniqueTipoPratica', + result: result, + factory: (e) => e != null ? _i2.TipoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoPratica> findUniqueOrThrow({ + required _i3.TipoPraticaWhereUniqueInput where, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica>( + action: 'findUniqueTipoPraticaOrThrow', + result: result, + factory: (e) => _i2.TipoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoPratica?> findFirst({ + _i3.TipoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoPraticaScalar, Iterable<_i3.TipoPraticaScalar>>? + distinct, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica?>( + action: 'findFirstTipoPratica', + result: result, + factory: (e) => e != null ? _i2.TipoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoPratica> findFirstOrThrow({ + _i3.TipoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoPraticaScalar, Iterable<_i3.TipoPraticaScalar>>? + distinct, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica>( + action: 'findFirstTipoPraticaOrThrow', + result: result, + factory: (e) => _i2.TipoPratica.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.TipoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoPraticaScalar, Iterable<_i3.TipoPraticaScalar>>? + distinct, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyTipoPratica', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.TipoPratica.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.TipoPratica> create({ + required _i1.PrismaUnion<_i3.TipoPraticaCreateInput, + _i3.TipoPraticaUncheckedCreateInput> + data, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica>( + action: 'createOneTipoPratica', + result: result, + factory: (e) => _i2.TipoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.TipoPraticaCreateManyInput, + Iterable<_i3.TipoPraticaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyTipoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoPratica?> update({ + required _i1.PrismaUnion<_i3.TipoPraticaUpdateInput, + _i3.TipoPraticaUncheckedUpdateInput> + data, + required _i3.TipoPraticaWhereUniqueInput where, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica?>( + action: 'updateOneTipoPratica', + result: result, + factory: (e) => e != null ? _i2.TipoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.TipoPraticaUpdateManyMutationInput, + _i3.TipoPraticaUncheckedUpdateManyInput> + data, + _i3.TipoPraticaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyTipoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoPratica> upsert({ + required _i3.TipoPraticaWhereUniqueInput where, + required _i1.PrismaUnion<_i3.TipoPraticaCreateInput, + _i3.TipoPraticaUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.TipoPraticaUpdateInput, + _i3.TipoPraticaUncheckedUpdateInput> + update, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica>( + action: 'upsertOneTipoPratica', + result: result, + factory: (e) => _i2.TipoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoPratica?> delete({ + required _i3.TipoPraticaWhereUniqueInput where, + _i3.TipoPraticaSelect? select, + _i3.TipoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoPratica?>( + action: 'deleteOneTipoPratica', + result: result, + factory: (e) => e != null ? _i2.TipoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.TipoPraticaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyTipoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.TipoPraticaWhereInput? where, + _i1.PrismaUnion, + _i3.TipoPraticaOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.TipoPraticaScalar> + by, + _i3.TipoPraticaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.TipoPraticaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByTipoPratica', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.TipoPraticaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateTipoPratica> aggregate({ + _i3.TipoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateTipoPraticaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoPratica', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateTipoPratica>( + action: 'aggregateTipoPratica', + result: result, + factory: (e) => _i3.AggregateTipoPratica.fromJson(e), + ); + } +} + +class StatoPraticaDelegate { + const StatoPraticaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.StatoPratica?> findUnique({ + required _i3.StatoPraticaWhereUniqueInput where, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica?>( + action: 'findUniqueStatoPratica', + result: result, + factory: (e) => e != null ? _i2.StatoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoPratica> findUniqueOrThrow({ + required _i3.StatoPraticaWhereUniqueInput where, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica>( + action: 'findUniqueStatoPraticaOrThrow', + result: result, + factory: (e) => _i2.StatoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoPratica?> findFirst({ + _i3.StatoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoPraticaScalar, Iterable<_i3.StatoPraticaScalar>>? + distinct, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica?>( + action: 'findFirstStatoPratica', + result: result, + factory: (e) => e != null ? _i2.StatoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoPratica> findFirstOrThrow({ + _i3.StatoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoPraticaScalar, Iterable<_i3.StatoPraticaScalar>>? + distinct, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica>( + action: 'findFirstStatoPraticaOrThrow', + result: result, + factory: (e) => _i2.StatoPratica.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.StatoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoPraticaScalar, Iterable<_i3.StatoPraticaScalar>>? + distinct, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyStatoPratica', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.StatoPratica.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.StatoPratica> create({ + required _i1.PrismaUnion<_i3.StatoPraticaCreateInput, + _i3.StatoPraticaUncheckedCreateInput> + data, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica>( + action: 'createOneStatoPratica', + result: result, + factory: (e) => _i2.StatoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.StatoPraticaCreateManyInput, + Iterable<_i3.StatoPraticaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyStatoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoPratica?> update({ + required _i1.PrismaUnion<_i3.StatoPraticaUpdateInput, + _i3.StatoPraticaUncheckedUpdateInput> + data, + required _i3.StatoPraticaWhereUniqueInput where, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica?>( + action: 'updateOneStatoPratica', + result: result, + factory: (e) => e != null ? _i2.StatoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.StatoPraticaUpdateManyMutationInput, + _i3.StatoPraticaUncheckedUpdateManyInput> + data, + _i3.StatoPraticaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyStatoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoPratica> upsert({ + required _i3.StatoPraticaWhereUniqueInput where, + required _i1.PrismaUnion<_i3.StatoPraticaCreateInput, + _i3.StatoPraticaUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.StatoPraticaUpdateInput, + _i3.StatoPraticaUncheckedUpdateInput> + update, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica>( + action: 'upsertOneStatoPratica', + result: result, + factory: (e) => _i2.StatoPratica.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoPratica?> delete({ + required _i3.StatoPraticaWhereUniqueInput where, + _i3.StatoPraticaSelect? select, + _i3.StatoPraticaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoPratica?>( + action: 'deleteOneStatoPratica', + result: result, + factory: (e) => e != null ? _i2.StatoPratica.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.StatoPraticaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyStatoPratica', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.StatoPraticaWhereInput? where, + _i1.PrismaUnion, + _i3.StatoPraticaOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.StatoPraticaScalar> + by, + _i3.StatoPraticaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.StatoPraticaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByStatoPratica', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.StatoPraticaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateStatoPratica> aggregate({ + _i3.StatoPraticaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoPraticaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateStatoPraticaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoPratica', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateStatoPratica>( + action: 'aggregateStatoPratica', + result: result, + factory: (e) => _i3.AggregateStatoPratica.fromJson(e), + ); + } +} + +class ContrattoEnelLuceDelegate { + const ContrattoEnelLuceDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ContrattoEnelLuce?> findUnique({ + required _i3.ContrattoEnelLuceWhereUniqueInput where, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce?>( + action: 'findUniqueContrattoEnelLuce', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce> findUniqueOrThrow({ + required _i3.ContrattoEnelLuceWhereUniqueInput where, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce>( + action: 'findUniqueContrattoEnelLuceOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce?> findFirst({ + _i3.ContrattoEnelLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelLuceScalar, + Iterable<_i3.ContrattoEnelLuceScalar>>? + distinct, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce?>( + action: 'findFirstContrattoEnelLuce', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce> findFirstOrThrow({ + _i3.ContrattoEnelLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelLuceScalar, + Iterable<_i3.ContrattoEnelLuceScalar>>? + distinct, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce>( + action: 'findFirstContrattoEnelLuceOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelLuce.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ContrattoEnelLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelLuceScalar, + Iterable<_i3.ContrattoEnelLuceScalar>>? + distinct, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyContrattoEnelLuce', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ContrattoEnelLuce.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce> create({ + required _i1.PrismaUnion<_i3.ContrattoEnelLuceCreateInput, + _i3.ContrattoEnelLuceUncheckedCreateInput> + data, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce>( + action: 'createOneContrattoEnelLuce', + result: result, + factory: (e) => _i2.ContrattoEnelLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelLuceCreateManyInput, + Iterable<_i3.ContrattoEnelLuceCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyContrattoEnelLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce?> update({ + required _i1.PrismaUnion<_i3.ContrattoEnelLuceUpdateInput, + _i3.ContrattoEnelLuceUncheckedUpdateInput> + data, + required _i3.ContrattoEnelLuceWhereUniqueInput where, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce?>( + action: 'updateOneContrattoEnelLuce', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelLuceUpdateManyMutationInput, + _i3.ContrattoEnelLuceUncheckedUpdateManyInput> + data, + _i3.ContrattoEnelLuceWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyContrattoEnelLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce> upsert({ + required _i3.ContrattoEnelLuceWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ContrattoEnelLuceCreateInput, + _i3.ContrattoEnelLuceUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ContrattoEnelLuceUpdateInput, + _i3.ContrattoEnelLuceUncheckedUpdateInput> + update, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce>( + action: 'upsertOneContrattoEnelLuce', + result: result, + factory: (e) => _i2.ContrattoEnelLuce.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelLuce?> delete({ + required _i3.ContrattoEnelLuceWhereUniqueInput where, + _i3.ContrattoEnelLuceSelect? select, + _i3.ContrattoEnelLuceInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelLuce?>( + action: 'deleteOneContrattoEnelLuce', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelLuce.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ContrattoEnelLuceWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyContrattoEnelLuce', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ContrattoEnelLuceWhereInput? where, + _i1.PrismaUnion, + _i3.ContrattoEnelLuceOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ContrattoEnelLuceScalar> + by, + _i3.ContrattoEnelLuceScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ContrattoEnelLuceGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByContrattoEnelLuce', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ContrattoEnelLuceGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateContrattoEnelLuce> aggregate({ + _i3.ContrattoEnelLuceWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelLuceWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateContrattoEnelLuceSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelLuce', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateContrattoEnelLuce>( + action: 'aggregateContrattoEnelLuce', + result: result, + factory: (e) => _i3.AggregateContrattoEnelLuce.fromJson(e), + ); + } +} + +class ContrattoEnelGasDelegate { + const ContrattoEnelGasDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ContrattoEnelGas?> findUnique({ + required _i3.ContrattoEnelGasWhereUniqueInput where, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas?>( + action: 'findUniqueContrattoEnelGas', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas> findUniqueOrThrow({ + required _i3.ContrattoEnelGasWhereUniqueInput where, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas>( + action: 'findUniqueContrattoEnelGasOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas?> findFirst({ + _i3.ContrattoEnelGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelGasScalar, + Iterable<_i3.ContrattoEnelGasScalar>>? + distinct, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas?>( + action: 'findFirstContrattoEnelGas', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas> findFirstOrThrow({ + _i3.ContrattoEnelGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelGasScalar, + Iterable<_i3.ContrattoEnelGasScalar>>? + distinct, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas>( + action: 'findFirstContrattoEnelGasOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelGas.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ContrattoEnelGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelGasScalar, + Iterable<_i3.ContrattoEnelGasScalar>>? + distinct, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyContrattoEnelGas', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ContrattoEnelGas.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas> create({ + required _i1.PrismaUnion<_i3.ContrattoEnelGasCreateInput, + _i3.ContrattoEnelGasUncheckedCreateInput> + data, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas>( + action: 'createOneContrattoEnelGas', + result: result, + factory: (e) => _i2.ContrattoEnelGas.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelGasCreateManyInput, + Iterable<_i3.ContrattoEnelGasCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyContrattoEnelGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas?> update({ + required _i1.PrismaUnion<_i3.ContrattoEnelGasUpdateInput, + _i3.ContrattoEnelGasUncheckedUpdateInput> + data, + required _i3.ContrattoEnelGasWhereUniqueInput where, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas?>( + action: 'updateOneContrattoEnelGas', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelGasUpdateManyMutationInput, + _i3.ContrattoEnelGasUncheckedUpdateManyInput> + data, + _i3.ContrattoEnelGasWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyContrattoEnelGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas> upsert({ + required _i3.ContrattoEnelGasWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ContrattoEnelGasCreateInput, + _i3.ContrattoEnelGasUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ContrattoEnelGasUpdateInput, + _i3.ContrattoEnelGasUncheckedUpdateInput> + update, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas>( + action: 'upsertOneContrattoEnelGas', + result: result, + factory: (e) => _i2.ContrattoEnelGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelGas?> delete({ + required _i3.ContrattoEnelGasWhereUniqueInput where, + _i3.ContrattoEnelGasSelect? select, + _i3.ContrattoEnelGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelGas?>( + action: 'deleteOneContrattoEnelGas', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ContrattoEnelGasWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyContrattoEnelGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ContrattoEnelGasWhereInput? where, + _i1.PrismaUnion, + _i3.ContrattoEnelGasOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ContrattoEnelGasScalar> + by, + _i3.ContrattoEnelGasScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ContrattoEnelGasGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByContrattoEnelGas', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ContrattoEnelGasGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateContrattoEnelGas> aggregate({ + _i3.ContrattoEnelGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateContrattoEnelGasSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelGas', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateContrattoEnelGas>( + action: 'aggregateContrattoEnelGas', + result: result, + factory: (e) => _i3.AggregateContrattoEnelGas.fromJson(e), + ); + } +} + +class ContrattoEnelXAssicurazioneDelegate { + const ContrattoEnelXAssicurazioneDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?> findUnique({ + required _i3.ContrattoEnelXAssicurazioneWhereUniqueInput where, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?>( + action: 'findUniqueContrattoEnelXAssicurazione', + result: result, + factory: (e) => + e != null ? _i2.ContrattoEnelXAssicurazione.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione> findUniqueOrThrow({ + required _i3.ContrattoEnelXAssicurazioneWhereUniqueInput where, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione>( + action: 'findUniqueContrattoEnelXAssicurazioneOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelXAssicurazione.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?> findFirst({ + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneScalar, + Iterable<_i3.ContrattoEnelXAssicurazioneScalar>>? + distinct, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?>( + action: 'findFirstContrattoEnelXAssicurazione', + result: result, + factory: (e) => + e != null ? _i2.ContrattoEnelXAssicurazione.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione> findFirstOrThrow({ + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneScalar, + Iterable<_i3.ContrattoEnelXAssicurazioneScalar>>? + distinct, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione>( + action: 'findFirstContrattoEnelXAssicurazioneOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelXAssicurazione.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneScalar, + Iterable<_i3.ContrattoEnelXAssicurazioneScalar>>? + distinct, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyContrattoEnelXAssicurazione', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i2.ContrattoEnelXAssicurazione.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione> create({ + required _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneCreateInput, + _i3.ContrattoEnelXAssicurazioneUncheckedCreateInput> + data, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione>( + action: 'createOneContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i2.ContrattoEnelXAssicurazione.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneCreateManyInput, + Iterable<_i3.ContrattoEnelXAssicurazioneCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?> update({ + required _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneUpdateInput, + _i3.ContrattoEnelXAssicurazioneUncheckedUpdateInput> + data, + required _i3.ContrattoEnelXAssicurazioneWhereUniqueInput where, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?>( + action: 'updateOneContrattoEnelXAssicurazione', + result: result, + factory: (e) => + e != null ? _i2.ContrattoEnelXAssicurazione.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion< + _i3.ContrattoEnelXAssicurazioneUpdateManyMutationInput, + _i3.ContrattoEnelXAssicurazioneUncheckedUpdateManyInput> + data, + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione> upsert({ + required _i3.ContrattoEnelXAssicurazioneWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneCreateInput, + _i3.ContrattoEnelXAssicurazioneUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ContrattoEnelXAssicurazioneUpdateInput, + _i3.ContrattoEnelXAssicurazioneUncheckedUpdateInput> + update, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione>( + action: 'upsertOneContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i2.ContrattoEnelXAssicurazione.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?> delete({ + required _i3.ContrattoEnelXAssicurazioneWhereUniqueInput where, + _i3.ContrattoEnelXAssicurazioneSelect? select, + _i3.ContrattoEnelXAssicurazioneInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelXAssicurazione?>( + action: 'deleteOneContrattoEnelXAssicurazione', + result: result, + factory: (e) => + e != null ? _i2.ContrattoEnelXAssicurazione.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ContrattoEnelXAssicurazioneWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> + groupBy({ + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.ContrattoEnelXAssicurazioneOrderByWithAggregationInput>, + _i3.ContrattoEnelXAssicurazioneOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ContrattoEnelXAssicurazioneScalar> + by, + _i3.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ContrattoEnelXAssicurazioneGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient< + Iterable<_i3.ContrattoEnelXAssicurazioneGroupByOutputType>>( + action: 'groupByContrattoEnelXAssicurazione', + result: result, + factory: (values) => (values as Iterable).map( + (e) => _i3.ContrattoEnelXAssicurazioneGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateContrattoEnelXAssicurazione> aggregate({ + _i3.ContrattoEnelXAssicurazioneWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i3 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateContrattoEnelXAssicurazioneSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelXAssicurazione', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateContrattoEnelXAssicurazione>( + action: 'aggregateContrattoEnelXAssicurazione', + result: result, + factory: (e) => _i3.AggregateContrattoEnelXAssicurazione.fromJson(e), + ); + } +} + +class ContrattoEnelFibraDelegate { + const ContrattoEnelFibraDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ContrattoEnelFibra?> findUnique({ + required _i3.ContrattoEnelFibraWhereUniqueInput where, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra?>( + action: 'findUniqueContrattoEnelFibra', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelFibra.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra> findUniqueOrThrow({ + required _i3.ContrattoEnelFibraWhereUniqueInput where, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra>( + action: 'findUniqueContrattoEnelFibraOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelFibra.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra?> findFirst({ + _i3.ContrattoEnelFibraWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelFibraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelFibraScalar, + Iterable<_i3.ContrattoEnelFibraScalar>>? + distinct, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra?>( + action: 'findFirstContrattoEnelFibra', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelFibra.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra> findFirstOrThrow({ + _i3.ContrattoEnelFibraWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelFibraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelFibraScalar, + Iterable<_i3.ContrattoEnelFibraScalar>>? + distinct, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra>( + action: 'findFirstContrattoEnelFibraOrThrow', + result: result, + factory: (e) => _i2.ContrattoEnelFibra.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ContrattoEnelFibraWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelFibraWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ContrattoEnelFibraScalar, + Iterable<_i3.ContrattoEnelFibraScalar>>? + distinct, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyContrattoEnelFibra', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ContrattoEnelFibra.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra> create({ + required _i1.PrismaUnion<_i3.ContrattoEnelFibraCreateInput, + _i3.ContrattoEnelFibraUncheckedCreateInput> + data, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra>( + action: 'createOneContrattoEnelFibra', + result: result, + factory: (e) => _i2.ContrattoEnelFibra.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelFibraCreateManyInput, + Iterable<_i3.ContrattoEnelFibraCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyContrattoEnelFibra', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra?> update({ + required _i1.PrismaUnion<_i3.ContrattoEnelFibraUpdateInput, + _i3.ContrattoEnelFibraUncheckedUpdateInput> + data, + required _i3.ContrattoEnelFibraWhereUniqueInput where, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra?>( + action: 'updateOneContrattoEnelFibra', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelFibra.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ContrattoEnelFibraUpdateManyMutationInput, + _i3.ContrattoEnelFibraUncheckedUpdateManyInput> + data, + _i3.ContrattoEnelFibraWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyContrattoEnelFibra', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra> upsert({ + required _i3.ContrattoEnelFibraWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ContrattoEnelFibraCreateInput, + _i3.ContrattoEnelFibraUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ContrattoEnelFibraUpdateInput, + _i3.ContrattoEnelFibraUncheckedUpdateInput> + update, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra>( + action: 'upsertOneContrattoEnelFibra', + result: result, + factory: (e) => _i2.ContrattoEnelFibra.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ContrattoEnelFibra?> delete({ + required _i3.ContrattoEnelFibraWhereUniqueInput where, + _i3.ContrattoEnelFibraSelect? select, + _i3.ContrattoEnelFibraInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ContrattoEnelFibra?>( + action: 'deleteOneContrattoEnelFibra', + result: result, + factory: (e) => e != null ? _i2.ContrattoEnelFibra.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ContrattoEnelFibraWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyContrattoEnelFibra', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ContrattoEnelFibraWhereInput? where, + _i1.PrismaUnion, + _i3.ContrattoEnelFibraOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ContrattoEnelFibraScalar> + by, + _i3.ContrattoEnelFibraScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ContrattoEnelFibraGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByContrattoEnelFibra', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ContrattoEnelFibraGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateContrattoEnelFibra> aggregate({ + _i3.ContrattoEnelFibraWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i3.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ContrattoEnelFibraWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateContrattoEnelFibraSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ContrattoEnelFibra', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateContrattoEnelFibra>( + action: 'aggregateContrattoEnelFibra', + result: result, + factory: (e) => _i3.AggregateContrattoEnelFibra.fromJson(e), + ); + } +} + +class ClasseMisuratoreGasDelegate { + const ClasseMisuratoreGasDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ClasseMisuratoreGas?> findUnique({ + required _i3.ClasseMisuratoreGasWhereUniqueInput where, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas?>( + action: 'findUniqueClasseMisuratoreGas', + result: result, + factory: (e) => e != null ? _i2.ClasseMisuratoreGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas> findUniqueOrThrow({ + required _i3.ClasseMisuratoreGasWhereUniqueInput where, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas>( + action: 'findUniqueClasseMisuratoreGasOrThrow', + result: result, + factory: (e) => _i2.ClasseMisuratoreGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas?> findFirst({ + _i3.ClasseMisuratoreGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ClasseMisuratoreGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ClasseMisuratoreGasScalar, + Iterable<_i3.ClasseMisuratoreGasScalar>>? + distinct, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas?>( + action: 'findFirstClasseMisuratoreGas', + result: result, + factory: (e) => e != null ? _i2.ClasseMisuratoreGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas> findFirstOrThrow({ + _i3.ClasseMisuratoreGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ClasseMisuratoreGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ClasseMisuratoreGasScalar, + Iterable<_i3.ClasseMisuratoreGasScalar>>? + distinct, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas>( + action: 'findFirstClasseMisuratoreGasOrThrow', + result: result, + factory: (e) => _i2.ClasseMisuratoreGas.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ClasseMisuratoreGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ClasseMisuratoreGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ClasseMisuratoreGasScalar, + Iterable<_i3.ClasseMisuratoreGasScalar>>? + distinct, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyClasseMisuratoreGas', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ClasseMisuratoreGas.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas> create({ + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasCreateInput, + _i3.ClasseMisuratoreGasUncheckedCreateInput> + data, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas>( + action: 'createOneClasseMisuratoreGas', + result: result, + factory: (e) => _i2.ClasseMisuratoreGas.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasCreateManyInput, + Iterable<_i3.ClasseMisuratoreGasCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyClasseMisuratoreGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas?> update({ + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasUpdateInput, + _i3.ClasseMisuratoreGasUncheckedUpdateInput> + data, + required _i3.ClasseMisuratoreGasWhereUniqueInput where, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas?>( + action: 'updateOneClasseMisuratoreGas', + result: result, + factory: (e) => e != null ? _i2.ClasseMisuratoreGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasUpdateManyMutationInput, + _i3.ClasseMisuratoreGasUncheckedUpdateManyInput> + data, + _i3.ClasseMisuratoreGasWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyClasseMisuratoreGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas> upsert({ + required _i3.ClasseMisuratoreGasWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasCreateInput, + _i3.ClasseMisuratoreGasUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ClasseMisuratoreGasUpdateInput, + _i3.ClasseMisuratoreGasUncheckedUpdateInput> + update, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas>( + action: 'upsertOneClasseMisuratoreGas', + result: result, + factory: (e) => _i2.ClasseMisuratoreGas.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ClasseMisuratoreGas?> delete({ + required _i3.ClasseMisuratoreGasWhereUniqueInput where, + _i3.ClasseMisuratoreGasSelect? select, + _i3.ClasseMisuratoreGasInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ClasseMisuratoreGas?>( + action: 'deleteOneClasseMisuratoreGas', + result: result, + factory: (e) => e != null ? _i2.ClasseMisuratoreGas.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ClasseMisuratoreGasWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyClasseMisuratoreGas', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ClasseMisuratoreGasWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ClasseMisuratoreGasOrderByWithAggregationInput>, + _i3.ClasseMisuratoreGasOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.ClasseMisuratoreGasScalar> + by, + _i3.ClasseMisuratoreGasScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ClasseMisuratoreGasGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByClasseMisuratoreGas', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ClasseMisuratoreGasGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateClasseMisuratoreGas> aggregate({ + _i3.ClasseMisuratoreGasWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>, + _i3.ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ClasseMisuratoreGasWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateClasseMisuratoreGasSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ClasseMisuratoreGas', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateClasseMisuratoreGas>( + action: 'aggregateClasseMisuratoreGas', + result: result, + factory: (e) => _i3.AggregateClasseMisuratoreGas.fromJson(e), + ); + } +} + +class FornitoreDelegate { + const FornitoreDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Fornitore?> findUnique({ + required _i3.FornitoreWhereUniqueInput where, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore?>( + action: 'findUniqueFornitore', + result: result, + factory: (e) => e != null ? _i2.Fornitore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Fornitore> findUniqueOrThrow({ + required _i3.FornitoreWhereUniqueInput where, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore>( + action: 'findUniqueFornitoreOrThrow', + result: result, + factory: (e) => _i2.Fornitore.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitore?> findFirst({ + _i3.FornitoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornitoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornitoreScalar, Iterable<_i3.FornitoreScalar>>? + distinct, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore?>( + action: 'findFirstFornitore', + result: result, + factory: (e) => e != null ? _i2.Fornitore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Fornitore> findFirstOrThrow({ + _i3.FornitoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornitoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornitoreScalar, Iterable<_i3.FornitoreScalar>>? + distinct, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore>( + action: 'findFirstFornitoreOrThrow', + result: result, + factory: (e) => _i2.Fornitore.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.FornitoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornitoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.FornitoreScalar, Iterable<_i3.FornitoreScalar>>? + distinct, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyFornitore', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Fornitore.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Fornitore> create({ + required _i1.PrismaUnion<_i3.FornitoreCreateInput, + _i3.FornitoreUncheckedCreateInput> + data, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore>( + action: 'createOneFornitore', + result: result, + factory: (e) => _i2.Fornitore.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.FornitoreCreateManyInput, + Iterable<_i3.FornitoreCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyFornitore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitore?> update({ + required _i1.PrismaUnion<_i3.FornitoreUpdateInput, + _i3.FornitoreUncheckedUpdateInput> + data, + required _i3.FornitoreWhereUniqueInput where, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore?>( + action: 'updateOneFornitore', + result: result, + factory: (e) => e != null ? _i2.Fornitore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.FornitoreUpdateManyMutationInput, + _i3.FornitoreUncheckedUpdateManyInput> + data, + _i3.FornitoreWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyFornitore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitore> upsert({ + required _i3.FornitoreWhereUniqueInput where, + required _i1.PrismaUnion<_i3.FornitoreCreateInput, + _i3.FornitoreUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.FornitoreUpdateInput, + _i3.FornitoreUncheckedUpdateInput> + update, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore>( + action: 'upsertOneFornitore', + result: result, + factory: (e) => _i2.Fornitore.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Fornitore?> delete({ + required _i3.FornitoreWhereUniqueInput where, + _i3.FornitoreSelect? select, + _i3.FornitoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Fornitore?>( + action: 'deleteOneFornitore', + result: result, + factory: (e) => e != null ? _i2.Fornitore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.FornitoreWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyFornitore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.FornitoreWhereInput? where, + _i1.PrismaUnion, + _i3.FornitoreOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.FornitoreScalar> + by, + _i3.FornitoreScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.FornitoreGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByFornitore', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.FornitoreGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateFornitore> aggregate({ + _i3.FornitoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.FornitoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.FornitoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateFornitoreSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Fornitore', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateFornitore>( + action: 'aggregateFornitore', + result: result, + factory: (e) => _i3.AggregateFornitore.fromJson(e), + ); + } +} + +class OrdineDelegate { + const OrdineDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Ordine?> findUnique({ + required _i3.OrdineWhereUniqueInput where, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine?>( + action: 'findUniqueOrdine', + result: result, + factory: (e) => e != null ? _i2.Ordine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Ordine> findUniqueOrThrow({ + required _i3.OrdineWhereUniqueInput where, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine>( + action: 'findUniqueOrdineOrThrow', + result: result, + factory: (e) => _i2.Ordine.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ordine?> findFirst({ + _i3.OrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.OrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OrdineScalar, Iterable<_i3.OrdineScalar>>? distinct, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine?>( + action: 'findFirstOrdine', + result: result, + factory: (e) => e != null ? _i2.Ordine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Ordine> findFirstOrThrow({ + _i3.OrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.OrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OrdineScalar, Iterable<_i3.OrdineScalar>>? distinct, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine>( + action: 'findFirstOrdineOrThrow', + result: result, + factory: (e) => _i2.Ordine.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.OrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.OrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OrdineScalar, Iterable<_i3.OrdineScalar>>? distinct, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyOrdine', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Ordine.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Ordine> create({ + required _i1 + .PrismaUnion<_i3.OrdineCreateInput, _i3.OrdineUncheckedCreateInput> + data, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine>( + action: 'createOneOrdine', + result: result, + factory: (e) => _i2.Ordine.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.OrdineCreateManyInput, + Iterable<_i3.OrdineCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ordine?> update({ + required _i1 + .PrismaUnion<_i3.OrdineUpdateInput, _i3.OrdineUncheckedUpdateInput> + data, + required _i3.OrdineWhereUniqueInput where, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine?>( + action: 'updateOneOrdine', + result: result, + factory: (e) => e != null ? _i2.Ordine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.OrdineUpdateManyMutationInput, + _i3.OrdineUncheckedUpdateManyInput> + data, + _i3.OrdineWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ordine> upsert({ + required _i3.OrdineWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.OrdineCreateInput, _i3.OrdineUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.OrdineUpdateInput, _i3.OrdineUncheckedUpdateInput> + update, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine>( + action: 'upsertOneOrdine', + result: result, + factory: (e) => _i2.Ordine.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ordine?> delete({ + required _i3.OrdineWhereUniqueInput where, + _i3.OrdineSelect? select, + _i3.OrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ordine?>( + action: 'deleteOneOrdine', + result: result, + factory: (e) => e != null ? _i2.Ordine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.OrdineWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.OrdineWhereInput? where, + _i1.PrismaUnion, + _i3.OrdineOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.OrdineScalar> by, + _i3.OrdineScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.OrdineGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByOrdine', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.OrdineGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateOrdine> aggregate({ + _i3.OrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.OrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateOrdineSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ordine', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateOrdine>( + action: 'aggregateOrdine', + result: result, + factory: (e) => _i3.AggregateOrdine.fromJson(e), + ); + } +} + +class StatoOrdineDelegate { + const StatoOrdineDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.StatoOrdine?> findUnique({ + required _i3.StatoOrdineWhereUniqueInput where, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine?>( + action: 'findUniqueStatoOrdine', + result: result, + factory: (e) => e != null ? _i2.StatoOrdine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoOrdine> findUniqueOrThrow({ + required _i3.StatoOrdineWhereUniqueInput where, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine>( + action: 'findUniqueStatoOrdineOrThrow', + result: result, + factory: (e) => _i2.StatoOrdine.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOrdine?> findFirst({ + _i3.StatoOrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOrdineScalar, Iterable<_i3.StatoOrdineScalar>>? + distinct, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine?>( + action: 'findFirstStatoOrdine', + result: result, + factory: (e) => e != null ? _i2.StatoOrdine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoOrdine> findFirstOrThrow({ + _i3.StatoOrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOrdineScalar, Iterable<_i3.StatoOrdineScalar>>? + distinct, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine>( + action: 'findFirstStatoOrdineOrThrow', + result: result, + factory: (e) => _i2.StatoOrdine.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.StatoOrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOrdineScalar, Iterable<_i3.StatoOrdineScalar>>? + distinct, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyStatoOrdine', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.StatoOrdine.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.StatoOrdine> create({ + required _i1.PrismaUnion<_i3.StatoOrdineCreateInput, + _i3.StatoOrdineUncheckedCreateInput> + data, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine>( + action: 'createOneStatoOrdine', + result: result, + factory: (e) => _i2.StatoOrdine.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.StatoOrdineCreateManyInput, + Iterable<_i3.StatoOrdineCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyStatoOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOrdine?> update({ + required _i1.PrismaUnion<_i3.StatoOrdineUpdateInput, + _i3.StatoOrdineUncheckedUpdateInput> + data, + required _i3.StatoOrdineWhereUniqueInput where, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine?>( + action: 'updateOneStatoOrdine', + result: result, + factory: (e) => e != null ? _i2.StatoOrdine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.StatoOrdineUpdateManyMutationInput, + _i3.StatoOrdineUncheckedUpdateManyInput> + data, + _i3.StatoOrdineWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyStatoOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOrdine> upsert({ + required _i3.StatoOrdineWhereUniqueInput where, + required _i1.PrismaUnion<_i3.StatoOrdineCreateInput, + _i3.StatoOrdineUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.StatoOrdineUpdateInput, + _i3.StatoOrdineUncheckedUpdateInput> + update, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine>( + action: 'upsertOneStatoOrdine', + result: result, + factory: (e) => _i2.StatoOrdine.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOrdine?> delete({ + required _i3.StatoOrdineWhereUniqueInput where, + _i3.StatoOrdineSelect? select, + _i3.StatoOrdineInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOrdine?>( + action: 'deleteOneStatoOrdine', + result: result, + factory: (e) => e != null ? _i2.StatoOrdine.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.StatoOrdineWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyStatoOrdine', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.StatoOrdineWhereInput? where, + _i1.PrismaUnion, + _i3.StatoOrdineOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.StatoOrdineScalar> + by, + _i3.StatoOrdineScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.StatoOrdineGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByStatoOrdine', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.StatoOrdineGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateStatoOrdine> aggregate({ + _i3.StatoOrdineWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOrdineOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOrdineWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateStatoOrdineSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOrdine', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateStatoOrdine>( + action: 'aggregateStatoOrdine', + result: result, + factory: (e) => _i3.AggregateStatoOrdine.fromJson(e), + ); + } +} + +class ProdottoDelegate { + const ProdottoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Prodotto?> findUnique({ + required _i3.ProdottoWhereUniqueInput where, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto?>( + action: 'findUniqueProdotto', + result: result, + factory: (e) => e != null ? _i2.Prodotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Prodotto> findUniqueOrThrow({ + required _i3.ProdottoWhereUniqueInput where, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto>( + action: 'findUniqueProdottoOrThrow', + result: result, + factory: (e) => _i2.Prodotto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Prodotto?> findFirst({ + _i3.ProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProdottoScalar, Iterable<_i3.ProdottoScalar>>? distinct, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto?>( + action: 'findFirstProdotto', + result: result, + factory: (e) => e != null ? _i2.Prodotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Prodotto> findFirstOrThrow({ + _i3.ProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProdottoScalar, Iterable<_i3.ProdottoScalar>>? distinct, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto>( + action: 'findFirstProdottoOrThrow', + result: result, + factory: (e) => _i2.Prodotto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProdottoScalar, Iterable<_i3.ProdottoScalar>>? distinct, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyProdotto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Prodotto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Prodotto> create({ + required _i1 + .PrismaUnion<_i3.ProdottoCreateInput, _i3.ProdottoUncheckedCreateInput> + data, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto>( + action: 'createOneProdotto', + result: result, + factory: (e) => _i2.Prodotto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ProdottoCreateManyInput, + Iterable<_i3.ProdottoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Prodotto?> update({ + required _i1 + .PrismaUnion<_i3.ProdottoUpdateInput, _i3.ProdottoUncheckedUpdateInput> + data, + required _i3.ProdottoWhereUniqueInput where, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto?>( + action: 'updateOneProdotto', + result: result, + factory: (e) => e != null ? _i2.Prodotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ProdottoUpdateManyMutationInput, + _i3.ProdottoUncheckedUpdateManyInput> + data, + _i3.ProdottoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Prodotto> upsert({ + required _i3.ProdottoWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.ProdottoCreateInput, _i3.ProdottoUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.ProdottoUpdateInput, _i3.ProdottoUncheckedUpdateInput> + update, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto>( + action: 'upsertOneProdotto', + result: result, + factory: (e) => _i2.Prodotto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Prodotto?> delete({ + required _i3.ProdottoWhereUniqueInput where, + _i3.ProdottoSelect? select, + _i3.ProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Prodotto?>( + action: 'deleteOneProdotto', + result: result, + factory: (e) => e != null ? _i2.Prodotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ProdottoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ProdottoWhereInput? where, + _i1.PrismaUnion, + _i3.ProdottoOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.ProdottoScalar> + by, + _i3.ProdottoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ProdottoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByProdotto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ProdottoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateProdotto> aggregate({ + _i3.ProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateProdottoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Prodotto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateProdotto>( + action: 'aggregateProdotto', + result: result, + factory: (e) => _i3.AggregateProdotto.fromJson(e), + ); + } +} + +class TipoProdottoDelegate { + const TipoProdottoDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.TipoProdotto?> findUnique({ + required _i3.TipoProdottoWhereUniqueInput where, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto?>( + action: 'findUniqueTipoProdotto', + result: result, + factory: (e) => e != null ? _i2.TipoProdotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoProdotto> findUniqueOrThrow({ + required _i3.TipoProdottoWhereUniqueInput where, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto>( + action: 'findUniqueTipoProdottoOrThrow', + result: result, + factory: (e) => _i2.TipoProdotto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoProdotto?> findFirst({ + _i3.TipoProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoProdottoScalar, Iterable<_i3.TipoProdottoScalar>>? + distinct, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto?>( + action: 'findFirstTipoProdotto', + result: result, + factory: (e) => e != null ? _i2.TipoProdotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.TipoProdotto> findFirstOrThrow({ + _i3.TipoProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoProdottoScalar, Iterable<_i3.TipoProdottoScalar>>? + distinct, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto>( + action: 'findFirstTipoProdottoOrThrow', + result: result, + factory: (e) => _i2.TipoProdotto.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.TipoProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.TipoProdottoScalar, Iterable<_i3.TipoProdottoScalar>>? + distinct, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyTipoProdotto', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.TipoProdotto.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.TipoProdotto> create({ + required _i1.PrismaUnion<_i3.TipoProdottoCreateInput, + _i3.TipoProdottoUncheckedCreateInput> + data, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto>( + action: 'createOneTipoProdotto', + result: result, + factory: (e) => _i2.TipoProdotto.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.TipoProdottoCreateManyInput, + Iterable<_i3.TipoProdottoCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyTipoProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoProdotto?> update({ + required _i1.PrismaUnion<_i3.TipoProdottoUpdateInput, + _i3.TipoProdottoUncheckedUpdateInput> + data, + required _i3.TipoProdottoWhereUniqueInput where, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto?>( + action: 'updateOneTipoProdotto', + result: result, + factory: (e) => e != null ? _i2.TipoProdotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.TipoProdottoUpdateManyMutationInput, + _i3.TipoProdottoUncheckedUpdateManyInput> + data, + _i3.TipoProdottoWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyTipoProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoProdotto> upsert({ + required _i3.TipoProdottoWhereUniqueInput where, + required _i1.PrismaUnion<_i3.TipoProdottoCreateInput, + _i3.TipoProdottoUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.TipoProdottoUpdateInput, + _i3.TipoProdottoUncheckedUpdateInput> + update, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto>( + action: 'upsertOneTipoProdotto', + result: result, + factory: (e) => _i2.TipoProdotto.fromJson(e), + ); + } + + _i1.ActionClient<_i2.TipoProdotto?> delete({ + required _i3.TipoProdottoWhereUniqueInput where, + _i3.TipoProdottoSelect? select, + _i3.TipoProdottoInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.TipoProdotto?>( + action: 'deleteOneTipoProdotto', + result: result, + factory: (e) => e != null ? _i2.TipoProdotto.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.TipoProdottoWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyTipoProdotto', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.TipoProdottoWhereInput? where, + _i1.PrismaUnion, + _i3.TipoProdottoOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.TipoProdottoScalar> + by, + _i3.TipoProdottoScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.TipoProdottoGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByTipoProdotto', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.TipoProdottoGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateTipoProdotto> aggregate({ + _i3.TipoProdottoWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i3.TipoProdottoOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.TipoProdottoWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateTipoProdottoSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'TipoProdotto', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateTipoProdotto>( + action: 'aggregateTipoProdotto', + result: result, + factory: (e) => _i3.AggregateTipoProdotto.fromJson(e), + ); + } +} + +class ProduttoreDelegate { + const ProduttoreDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Produttore?> findUnique({ + required _i3.ProduttoreWhereUniqueInput where, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore?>( + action: 'findUniqueProduttore', + result: result, + factory: (e) => e != null ? _i2.Produttore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Produttore> findUniqueOrThrow({ + required _i3.ProduttoreWhereUniqueInput where, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore>( + action: 'findUniqueProduttoreOrThrow', + result: result, + factory: (e) => _i2.Produttore.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Produttore?> findFirst({ + _i3.ProduttoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProduttoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProduttoreScalar, Iterable<_i3.ProduttoreScalar>>? + distinct, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore?>( + action: 'findFirstProduttore', + result: result, + factory: (e) => e != null ? _i2.Produttore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Produttore> findFirstOrThrow({ + _i3.ProduttoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProduttoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProduttoreScalar, Iterable<_i3.ProduttoreScalar>>? + distinct, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore>( + action: 'findFirstProduttoreOrThrow', + result: result, + factory: (e) => _i2.Produttore.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ProduttoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProduttoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ProduttoreScalar, Iterable<_i3.ProduttoreScalar>>? + distinct, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyProduttore', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Produttore.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Produttore> create({ + required _i1.PrismaUnion<_i3.ProduttoreCreateInput, + _i3.ProduttoreUncheckedCreateInput> + data, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore>( + action: 'createOneProduttore', + result: result, + factory: (e) => _i2.Produttore.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ProduttoreCreateManyInput, + Iterable<_i3.ProduttoreCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyProduttore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Produttore?> update({ + required _i1.PrismaUnion<_i3.ProduttoreUpdateInput, + _i3.ProduttoreUncheckedUpdateInput> + data, + required _i3.ProduttoreWhereUniqueInput where, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore?>( + action: 'updateOneProduttore', + result: result, + factory: (e) => e != null ? _i2.Produttore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ProduttoreUpdateManyMutationInput, + _i3.ProduttoreUncheckedUpdateManyInput> + data, + _i3.ProduttoreWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyProduttore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Produttore> upsert({ + required _i3.ProduttoreWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ProduttoreCreateInput, + _i3.ProduttoreUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ProduttoreUpdateInput, + _i3.ProduttoreUncheckedUpdateInput> + update, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore>( + action: 'upsertOneProduttore', + result: result, + factory: (e) => _i2.Produttore.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Produttore?> delete({ + required _i3.ProduttoreWhereUniqueInput where, + _i3.ProduttoreSelect? select, + _i3.ProduttoreInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Produttore?>( + action: 'deleteOneProduttore', + result: result, + factory: (e) => e != null ? _i2.Produttore.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ProduttoreWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyProduttore', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ProduttoreWhereInput? where, + _i1.PrismaUnion, + _i3.ProduttoreOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.ProduttoreScalar> + by, + _i3.ProduttoreScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ProduttoreGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByProduttore', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ProduttoreGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateProduttore> aggregate({ + _i3.ProduttoreWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>, + _i3.ProduttoreOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ProduttoreWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateProduttoreSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Produttore', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateProduttore>( + action: 'aggregateProduttore', + result: result, + factory: (e) => _i3.AggregateProduttore.fromJson(e), + ); + } +} + +class UtenteDelegate { + const UtenteDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Utente?> findUnique({ + required _i3.UtenteWhereUniqueInput where, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente?>( + action: 'findUniqueUtente', + result: result, + factory: (e) => e != null ? _i2.Utente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Utente> findUniqueOrThrow({ + required _i3.UtenteWhereUniqueInput where, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente>( + action: 'findUniqueUtenteOrThrow', + result: result, + factory: (e) => _i2.Utente.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Utente?> findFirst({ + _i3.UtenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.UtenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.UtenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.UtenteScalar, Iterable<_i3.UtenteScalar>>? distinct, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente?>( + action: 'findFirstUtente', + result: result, + factory: (e) => e != null ? _i2.Utente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Utente> findFirstOrThrow({ + _i3.UtenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.UtenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.UtenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.UtenteScalar, Iterable<_i3.UtenteScalar>>? distinct, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente>( + action: 'findFirstUtenteOrThrow', + result: result, + factory: (e) => _i2.Utente.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.UtenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.UtenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.UtenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.UtenteScalar, Iterable<_i3.UtenteScalar>>? distinct, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyUtente', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Utente.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Utente> create({ + required _i1 + .PrismaUnion<_i3.UtenteCreateInput, _i3.UtenteUncheckedCreateInput> + data, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente>( + action: 'createOneUtente', + result: result, + factory: (e) => _i2.Utente.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.UtenteCreateManyInput, + Iterable<_i3.UtenteCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyUtente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Utente?> update({ + required _i1 + .PrismaUnion<_i3.UtenteUpdateInput, _i3.UtenteUncheckedUpdateInput> + data, + required _i3.UtenteWhereUniqueInput where, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente?>( + action: 'updateOneUtente', + result: result, + factory: (e) => e != null ? _i2.Utente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.UtenteUpdateManyMutationInput, + _i3.UtenteUncheckedUpdateManyInput> + data, + _i3.UtenteWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyUtente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Utente> upsert({ + required _i3.UtenteWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.UtenteCreateInput, _i3.UtenteUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.UtenteUpdateInput, _i3.UtenteUncheckedUpdateInput> + update, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente>( + action: 'upsertOneUtente', + result: result, + factory: (e) => _i2.Utente.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Utente?> delete({ + required _i3.UtenteWhereUniqueInput where, + _i3.UtenteSelect? select, + _i3.UtenteInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Utente?>( + action: 'deleteOneUtente', + result: result, + factory: (e) => e != null ? _i2.Utente.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.UtenteWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyUtente', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.UtenteWhereInput? where, + _i1.PrismaUnion, + _i3.UtenteOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.UtenteScalar> by, + _i3.UtenteScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.UtenteGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByUtente', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.UtenteGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateUtente> aggregate({ + _i3.UtenteWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i3.UtenteOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.UtenteWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateUtenteSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Utente', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateUtente>( + action: 'aggregateUtente', + result: result, + factory: (e) => _i3.AggregateUtente.fromJson(e), + ); + } +} + +class NegozioDelegate { + const NegozioDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Negozio?> findUnique({ + required _i3.NegozioWhereUniqueInput where, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio?>( + action: 'findUniqueNegozio', + result: result, + factory: (e) => e != null ? _i2.Negozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Negozio> findUniqueOrThrow({ + required _i3.NegozioWhereUniqueInput where, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio>( + action: 'findUniqueNegozioOrThrow', + result: result, + factory: (e) => _i2.Negozio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Negozio?> findFirst({ + _i3.NegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.NegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.NegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NegozioScalar, Iterable<_i3.NegozioScalar>>? distinct, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio?>( + action: 'findFirstNegozio', + result: result, + factory: (e) => e != null ? _i2.Negozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Negozio> findFirstOrThrow({ + _i3.NegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.NegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.NegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NegozioScalar, Iterable<_i3.NegozioScalar>>? distinct, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio>( + action: 'findFirstNegozioOrThrow', + result: result, + factory: (e) => _i2.Negozio.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.NegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.NegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.NegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.NegozioScalar, Iterable<_i3.NegozioScalar>>? distinct, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyNegozio', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Negozio.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Negozio> create({ + required _i1 + .PrismaUnion<_i3.NegozioCreateInput, _i3.NegozioUncheckedCreateInput> + data, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio>( + action: 'createOneNegozio', + result: result, + factory: (e) => _i2.Negozio.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.NegozioCreateManyInput, + Iterable<_i3.NegozioCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Negozio?> update({ + required _i1 + .PrismaUnion<_i3.NegozioUpdateInput, _i3.NegozioUncheckedUpdateInput> + data, + required _i3.NegozioWhereUniqueInput where, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio?>( + action: 'updateOneNegozio', + result: result, + factory: (e) => e != null ? _i2.Negozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.NegozioUpdateManyMutationInput, + _i3.NegozioUncheckedUpdateManyInput> + data, + _i3.NegozioWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Negozio> upsert({ + required _i3.NegozioWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.NegozioCreateInput, _i3.NegozioUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.NegozioUpdateInput, _i3.NegozioUncheckedUpdateInput> + update, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio>( + action: 'upsertOneNegozio', + result: result, + factory: (e) => _i2.Negozio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Negozio?> delete({ + required _i3.NegozioWhereUniqueInput where, + _i3.NegozioSelect? select, + _i3.NegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Negozio?>( + action: 'deleteOneNegozio', + result: result, + factory: (e) => e != null ? _i2.Negozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.NegozioWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.NegozioWhereInput? where, + _i1.PrismaUnion, + _i3.NegozioOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.NegozioScalar> by, + _i3.NegozioScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.NegozioGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByNegozio', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.NegozioGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateNegozio> aggregate({ + _i3.NegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.NegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.NegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.NegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateNegozioSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Negozio', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateNegozio>( + action: 'aggregateNegozio', + result: result, + factory: (e) => _i3.AggregateNegozio.fromJson(e), + ); + } +} + +class IngressiDelegate { + const IngressiDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Ingressi?> findUnique({ + required _i3.IngressiWhereUniqueInput where, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi?>( + action: 'findUniqueIngressi', + result: result, + factory: (e) => e != null ? _i2.Ingressi.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Ingressi> findUniqueOrThrow({ + required _i3.IngressiWhereUniqueInput where, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi>( + action: 'findUniqueIngressiOrThrow', + result: result, + factory: (e) => _i2.Ingressi.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ingressi?> findFirst({ + _i3.IngressiWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i3.IngressiOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IngressiWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IngressiScalar, Iterable<_i3.IngressiScalar>>? distinct, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi?>( + action: 'findFirstIngressi', + result: result, + factory: (e) => e != null ? _i2.Ingressi.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Ingressi> findFirstOrThrow({ + _i3.IngressiWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i3.IngressiOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IngressiWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IngressiScalar, Iterable<_i3.IngressiScalar>>? distinct, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi>( + action: 'findFirstIngressiOrThrow', + result: result, + factory: (e) => _i2.Ingressi.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.IngressiWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i3.IngressiOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IngressiWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.IngressiScalar, Iterable<_i3.IngressiScalar>>? distinct, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyIngressi', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Ingressi.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Ingressi> create({ + required _i1 + .PrismaUnion<_i3.IngressiCreateInput, _i3.IngressiUncheckedCreateInput> + data, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi>( + action: 'createOneIngressi', + result: result, + factory: (e) => _i2.Ingressi.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.IngressiCreateManyInput, + Iterable<_i3.IngressiCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyIngressi', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ingressi?> update({ + required _i1 + .PrismaUnion<_i3.IngressiUpdateInput, _i3.IngressiUncheckedUpdateInput> + data, + required _i3.IngressiWhereUniqueInput where, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi?>( + action: 'updateOneIngressi', + result: result, + factory: (e) => e != null ? _i2.Ingressi.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.IngressiUpdateManyMutationInput, + _i3.IngressiUncheckedUpdateManyInput> + data, + _i3.IngressiWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyIngressi', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ingressi> upsert({ + required _i3.IngressiWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.IngressiCreateInput, _i3.IngressiUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.IngressiUpdateInput, _i3.IngressiUncheckedUpdateInput> + update, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi>( + action: 'upsertOneIngressi', + result: result, + factory: (e) => _i2.Ingressi.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Ingressi?> delete({ + required _i3.IngressiWhereUniqueInput where, + _i3.IngressiSelect? select, + _i3.IngressiInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Ingressi?>( + action: 'deleteOneIngressi', + result: result, + factory: (e) => e != null ? _i2.Ingressi.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.IngressiWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyIngressi', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.IngressiWhereInput? where, + _i1.PrismaUnion, + _i3.IngressiOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.IngressiScalar> + by, + _i3.IngressiScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.IngressiGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByIngressi', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.IngressiGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateIngressi> aggregate({ + _i3.IngressiWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i3.IngressiOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.IngressiWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateIngressiSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Ingressi', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateIngressi>( + action: 'aggregateIngressi', + result: result, + factory: (e) => _i3.AggregateIngressi.fromJson(e), + ); + } +} + +class ZonaNegozioDelegate { + const ZonaNegozioDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.ZonaNegozio?> findUnique({ + required _i3.ZonaNegozioWhereUniqueInput where, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio?>( + action: 'findUniqueZonaNegozio', + result: result, + factory: (e) => e != null ? _i2.ZonaNegozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ZonaNegozio> findUniqueOrThrow({ + required _i3.ZonaNegozioWhereUniqueInput where, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio>( + action: 'findUniqueZonaNegozioOrThrow', + result: result, + factory: (e) => _i2.ZonaNegozio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ZonaNegozio?> findFirst({ + _i3.ZonaNegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ZonaNegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ZonaNegozioScalar, Iterable<_i3.ZonaNegozioScalar>>? + distinct, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio?>( + action: 'findFirstZonaNegozio', + result: result, + factory: (e) => e != null ? _i2.ZonaNegozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.ZonaNegozio> findFirstOrThrow({ + _i3.ZonaNegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ZonaNegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ZonaNegozioScalar, Iterable<_i3.ZonaNegozioScalar>>? + distinct, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio>( + action: 'findFirstZonaNegozioOrThrow', + result: result, + factory: (e) => _i2.ZonaNegozio.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.ZonaNegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ZonaNegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.ZonaNegozioScalar, Iterable<_i3.ZonaNegozioScalar>>? + distinct, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyZonaNegozio', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.ZonaNegozio.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.ZonaNegozio> create({ + required _i1.PrismaUnion<_i3.ZonaNegozioCreateInput, + _i3.ZonaNegozioUncheckedCreateInput> + data, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio>( + action: 'createOneZonaNegozio', + result: result, + factory: (e) => _i2.ZonaNegozio.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.ZonaNegozioCreateManyInput, + Iterable<_i3.ZonaNegozioCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyZonaNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ZonaNegozio?> update({ + required _i1.PrismaUnion<_i3.ZonaNegozioUpdateInput, + _i3.ZonaNegozioUncheckedUpdateInput> + data, + required _i3.ZonaNegozioWhereUniqueInput where, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio?>( + action: 'updateOneZonaNegozio', + result: result, + factory: (e) => e != null ? _i2.ZonaNegozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.ZonaNegozioUpdateManyMutationInput, + _i3.ZonaNegozioUncheckedUpdateManyInput> + data, + _i3.ZonaNegozioWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyZonaNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ZonaNegozio> upsert({ + required _i3.ZonaNegozioWhereUniqueInput where, + required _i1.PrismaUnion<_i3.ZonaNegozioCreateInput, + _i3.ZonaNegozioUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.ZonaNegozioUpdateInput, + _i3.ZonaNegozioUncheckedUpdateInput> + update, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio>( + action: 'upsertOneZonaNegozio', + result: result, + factory: (e) => _i2.ZonaNegozio.fromJson(e), + ); + } + + _i1.ActionClient<_i2.ZonaNegozio?> delete({ + required _i3.ZonaNegozioWhereUniqueInput where, + _i3.ZonaNegozioSelect? select, + _i3.ZonaNegozioInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.ZonaNegozio?>( + action: 'deleteOneZonaNegozio', + result: result, + factory: (e) => e != null ? _i2.ZonaNegozio.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.ZonaNegozioWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyZonaNegozio', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.ZonaNegozioWhereInput? where, + _i1.PrismaUnion, + _i3.ZonaNegozioOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.ZonaNegozioScalar> + by, + _i3.ZonaNegozioScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.ZonaNegozioGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByZonaNegozio', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.ZonaNegozioGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateZonaNegozio> aggregate({ + _i3.ZonaNegozioWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>, + _i3.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.ZonaNegozioWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateZonaNegozioSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'ZonaNegozio', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateZonaNegozio>( + action: 'aggregateZonaNegozio', + result: result, + factory: (e) => _i3.AggregateZonaNegozio.fromJson(e), + ); + } +} + +class LeadDelegate { + const LeadDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Lead?> findUnique({ + required _i3.LeadWhereUniqueInput where, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead?>( + action: 'findUniqueLead', + result: result, + factory: (e) => e != null ? _i2.Lead.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Lead> findUniqueOrThrow({ + required _i3.LeadWhereUniqueInput where, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead>( + action: 'findUniqueLeadOrThrow', + result: result, + factory: (e) => _i2.Lead.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Lead?> findFirst({ + _i3.LeadWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i3.LeadOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LeadWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LeadScalar, Iterable<_i3.LeadScalar>>? distinct, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead?>( + action: 'findFirstLead', + result: result, + factory: (e) => e != null ? _i2.Lead.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Lead> findFirstOrThrow({ + _i3.LeadWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i3.LeadOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LeadWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LeadScalar, Iterable<_i3.LeadScalar>>? distinct, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead>( + action: 'findFirstLeadOrThrow', + result: result, + factory: (e) => _i2.Lead.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.LeadWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i3.LeadOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LeadWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.LeadScalar, Iterable<_i3.LeadScalar>>? distinct, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyLead', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Lead.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Lead> create({ + required _i1.PrismaUnion<_i3.LeadCreateInput, _i3.LeadUncheckedCreateInput> + data, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead>( + action: 'createOneLead', + result: result, + factory: (e) => _i2.Lead.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1 + .PrismaUnion<_i3.LeadCreateManyInput, Iterable<_i3.LeadCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyLead', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Lead?> update({ + required _i1.PrismaUnion<_i3.LeadUpdateInput, _i3.LeadUncheckedUpdateInput> + data, + required _i3.LeadWhereUniqueInput where, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead?>( + action: 'updateOneLead', + result: result, + factory: (e) => e != null ? _i2.Lead.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.LeadUpdateManyMutationInput, + _i3.LeadUncheckedUpdateManyInput> + data, + _i3.LeadWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyLead', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Lead> upsert({ + required _i3.LeadWhereUniqueInput where, + required _i1.PrismaUnion<_i3.LeadCreateInput, _i3.LeadUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.LeadUpdateInput, _i3.LeadUncheckedUpdateInput> + update, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead>( + action: 'upsertOneLead', + result: result, + factory: (e) => _i2.Lead.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Lead?> delete({ + required _i3.LeadWhereUniqueInput where, + _i3.LeadSelect? select, + _i3.LeadInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Lead?>( + action: 'deleteOneLead', + result: result, + factory: (e) => e != null ? _i2.Lead.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.LeadWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyLead', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.LeadWhereInput? where, + _i1.PrismaUnion, + _i3.LeadOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.LeadScalar> by, + _i3.LeadScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.LeadGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByLead', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.LeadGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateLead> aggregate({ + _i3.LeadWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i3.LeadOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.LeadWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateLeadSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Lead', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateLead>( + action: 'aggregateLead', + result: result, + factory: (e) => _i3.AggregateLead.fromJson(e), + ); + } +} + +class OpportunitaDelegate { + const OpportunitaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.Opportunita?> findUnique({ + required _i3.OpportunitaWhereUniqueInput where, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita?>( + action: 'findUniqueOpportunita', + result: result, + factory: (e) => e != null ? _i2.Opportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Opportunita> findUniqueOrThrow({ + required _i3.OpportunitaWhereUniqueInput where, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita>( + action: 'findUniqueOpportunitaOrThrow', + result: result, + factory: (e) => _i2.Opportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Opportunita?> findFirst({ + _i3.OpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OpportunitaScalar, Iterable<_i3.OpportunitaScalar>>? + distinct, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita?>( + action: 'findFirstOpportunita', + result: result, + factory: (e) => e != null ? _i2.Opportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.Opportunita> findFirstOrThrow({ + _i3.OpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OpportunitaScalar, Iterable<_i3.OpportunitaScalar>>? + distinct, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita>( + action: 'findFirstOpportunitaOrThrow', + result: result, + factory: (e) => _i2.Opportunita.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.OpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.OpportunitaScalar, Iterable<_i3.OpportunitaScalar>>? + distinct, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyOpportunita', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.Opportunita.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.Opportunita> create({ + required _i1.PrismaUnion<_i3.OpportunitaCreateInput, + _i3.OpportunitaUncheckedCreateInput> + data, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita>( + action: 'createOneOpportunita', + result: result, + factory: (e) => _i2.Opportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.OpportunitaCreateManyInput, + Iterable<_i3.OpportunitaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Opportunita?> update({ + required _i1.PrismaUnion<_i3.OpportunitaUpdateInput, + _i3.OpportunitaUncheckedUpdateInput> + data, + required _i3.OpportunitaWhereUniqueInput where, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita?>( + action: 'updateOneOpportunita', + result: result, + factory: (e) => e != null ? _i2.Opportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.OpportunitaUpdateManyMutationInput, + _i3.OpportunitaUncheckedUpdateManyInput> + data, + _i3.OpportunitaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Opportunita> upsert({ + required _i3.OpportunitaWhereUniqueInput where, + required _i1.PrismaUnion<_i3.OpportunitaCreateInput, + _i3.OpportunitaUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.OpportunitaUpdateInput, + _i3.OpportunitaUncheckedUpdateInput> + update, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita>( + action: 'upsertOneOpportunita', + result: result, + factory: (e) => _i2.Opportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i2.Opportunita?> delete({ + required _i3.OpportunitaWhereUniqueInput where, + _i3.OpportunitaSelect? select, + _i3.OpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.Opportunita?>( + action: 'deleteOneOpportunita', + result: result, + factory: (e) => e != null ? _i2.Opportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.OpportunitaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.OpportunitaWhereInput? where, + _i1.PrismaUnion, + _i3.OpportunitaOrderByWithAggregationInput>? + orderBy, + required _i1 + .PrismaUnion, _i3.OpportunitaScalar> + by, + _i3.OpportunitaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.OpportunitaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByOpportunita', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.OpportunitaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateOpportunita> aggregate({ + _i3.OpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.OpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateOpportunitaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'Opportunita', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateOpportunita>( + action: 'aggregateOpportunita', + result: result, + factory: (e) => _i3.AggregateOpportunita.fromJson(e), + ); + } +} + +class StatoOpportunitaDelegate { + const StatoOpportunitaDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.StatoOpportunita?> findUnique({ + required _i3.StatoOpportunitaWhereUniqueInput where, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita?>( + action: 'findUniqueStatoOpportunita', + result: result, + factory: (e) => e != null ? _i2.StatoOpportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoOpportunita> findUniqueOrThrow({ + required _i3.StatoOpportunitaWhereUniqueInput where, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita>( + action: 'findUniqueStatoOpportunitaOrThrow', + result: result, + factory: (e) => _i2.StatoOpportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOpportunita?> findFirst({ + _i3.StatoOpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOpportunitaScalar, + Iterable<_i3.StatoOpportunitaScalar>>? + distinct, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita?>( + action: 'findFirstStatoOpportunita', + result: result, + factory: (e) => e != null ? _i2.StatoOpportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.StatoOpportunita> findFirstOrThrow({ + _i3.StatoOpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOpportunitaScalar, + Iterable<_i3.StatoOpportunitaScalar>>? + distinct, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita>( + action: 'findFirstStatoOpportunitaOrThrow', + result: result, + factory: (e) => _i2.StatoOpportunita.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.StatoOpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.StatoOpportunitaScalar, + Iterable<_i3.StatoOpportunitaScalar>>? + distinct, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyStatoOpportunita', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.StatoOpportunita.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.StatoOpportunita> create({ + required _i1.PrismaUnion<_i3.StatoOpportunitaCreateInput, + _i3.StatoOpportunitaUncheckedCreateInput> + data, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita>( + action: 'createOneStatoOpportunita', + result: result, + factory: (e) => _i2.StatoOpportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.StatoOpportunitaCreateManyInput, + Iterable<_i3.StatoOpportunitaCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyStatoOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOpportunita?> update({ + required _i1.PrismaUnion<_i3.StatoOpportunitaUpdateInput, + _i3.StatoOpportunitaUncheckedUpdateInput> + data, + required _i3.StatoOpportunitaWhereUniqueInput where, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita?>( + action: 'updateOneStatoOpportunita', + result: result, + factory: (e) => e != null ? _i2.StatoOpportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.StatoOpportunitaUpdateManyMutationInput, + _i3.StatoOpportunitaUncheckedUpdateManyInput> + data, + _i3.StatoOpportunitaWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyStatoOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOpportunita> upsert({ + required _i3.StatoOpportunitaWhereUniqueInput where, + required _i1.PrismaUnion<_i3.StatoOpportunitaCreateInput, + _i3.StatoOpportunitaUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.StatoOpportunitaUpdateInput, + _i3.StatoOpportunitaUncheckedUpdateInput> + update, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita>( + action: 'upsertOneStatoOpportunita', + result: result, + factory: (e) => _i2.StatoOpportunita.fromJson(e), + ); + } + + _i1.ActionClient<_i2.StatoOpportunita?> delete({ + required _i3.StatoOpportunitaWhereUniqueInput where, + _i3.StatoOpportunitaSelect? select, + _i3.StatoOpportunitaInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.StatoOpportunita?>( + action: 'deleteOneStatoOpportunita', + result: result, + factory: (e) => e != null ? _i2.StatoOpportunita.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.StatoOpportunitaWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyStatoOpportunita', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.StatoOpportunitaWhereInput? where, + _i1.PrismaUnion, + _i3.StatoOpportunitaOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.StatoOpportunitaScalar> + by, + _i3.StatoOpportunitaScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.StatoOpportunitaGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByStatoOpportunita', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.StatoOpportunitaGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateStatoOpportunita> aggregate({ + _i3.StatoOpportunitaWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i3.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.StatoOpportunitaWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateStatoOpportunitaSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'StatoOpportunita', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateStatoOpportunita>( + action: 'aggregateStatoOpportunita', + result: result, + factory: (e) => _i3.AggregateStatoOpportunita.fromJson(e), + ); + } +} + +class HistoryDelegate { + const HistoryDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.History?> findUnique({ + required _i3.HistoryWhereUniqueInput where, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History?>( + action: 'findUniqueHistory', + result: result, + factory: (e) => e != null ? _i2.History.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.History> findUniqueOrThrow({ + required _i3.HistoryWhereUniqueInput where, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History>( + action: 'findUniqueHistoryOrThrow', + result: result, + factory: (e) => _i2.History.fromJson(e), + ); + } + + _i1.ActionClient<_i2.History?> findFirst({ + _i3.HistoryWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryScalar, Iterable<_i3.HistoryScalar>>? distinct, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History?>( + action: 'findFirstHistory', + result: result, + factory: (e) => e != null ? _i2.History.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.History> findFirstOrThrow({ + _i3.HistoryWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryScalar, Iterable<_i3.HistoryScalar>>? distinct, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History>( + action: 'findFirstHistoryOrThrow', + result: result, + factory: (e) => _i2.History.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.HistoryWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryScalar, Iterable<_i3.HistoryScalar>>? distinct, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyHistory', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.History.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.History> create({ + required _i1 + .PrismaUnion<_i3.HistoryCreateInput, _i3.HistoryUncheckedCreateInput> + data, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History>( + action: 'createOneHistory', + result: result, + factory: (e) => _i2.History.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.HistoryCreateManyInput, + Iterable<_i3.HistoryCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyHistory', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.History?> update({ + required _i1 + .PrismaUnion<_i3.HistoryUpdateInput, _i3.HistoryUncheckedUpdateInput> + data, + required _i3.HistoryWhereUniqueInput where, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History?>( + action: 'updateOneHistory', + result: result, + factory: (e) => e != null ? _i2.History.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.HistoryUpdateManyMutationInput, + _i3.HistoryUncheckedUpdateManyInput> + data, + _i3.HistoryWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyHistory', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.History> upsert({ + required _i3.HistoryWhereUniqueInput where, + required _i1 + .PrismaUnion<_i3.HistoryCreateInput, _i3.HistoryUncheckedCreateInput> + create, + required _i1 + .PrismaUnion<_i3.HistoryUpdateInput, _i3.HistoryUncheckedUpdateInput> + update, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History>( + action: 'upsertOneHistory', + result: result, + factory: (e) => _i2.History.fromJson(e), + ); + } + + _i1.ActionClient<_i2.History?> delete({ + required _i3.HistoryWhereUniqueInput where, + _i3.HistorySelect? select, + _i3.HistoryInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.History?>( + action: 'deleteOneHistory', + result: result, + factory: (e) => e != null ? _i2.History.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.HistoryWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyHistory', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.HistoryWhereInput? where, + _i1.PrismaUnion, + _i3.HistoryOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, _i3.HistoryScalar> by, + _i3.HistoryScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.HistoryGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByHistory', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.HistoryGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateHistory> aggregate({ + _i3.HistoryWhereInput? where, + _i1.PrismaUnion< + Iterable<_i3.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateHistorySelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'History', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateHistory>( + action: 'aggregateHistory', + result: result, + factory: (e) => _i3.AggregateHistory.fromJson(e), + ); + } +} + +class HistoryCommentDelegate { + const HistoryCommentDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.HistoryComment?> findUnique({ + required _i3.HistoryCommentWhereUniqueInput where, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment?>( + action: 'findUniqueHistoryComment', + result: result, + factory: (e) => e != null ? _i2.HistoryComment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.HistoryComment> findUniqueOrThrow({ + required _i3.HistoryCommentWhereUniqueInput where, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment>( + action: 'findUniqueHistoryCommentOrThrow', + result: result, + factory: (e) => _i2.HistoryComment.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryComment?> findFirst({ + _i3.HistoryCommentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryCommentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryCommentScalar, + Iterable<_i3.HistoryCommentScalar>>? + distinct, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment?>( + action: 'findFirstHistoryComment', + result: result, + factory: (e) => e != null ? _i2.HistoryComment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.HistoryComment> findFirstOrThrow({ + _i3.HistoryCommentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryCommentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryCommentScalar, + Iterable<_i3.HistoryCommentScalar>>? + distinct, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment>( + action: 'findFirstHistoryCommentOrThrow', + result: result, + factory: (e) => _i2.HistoryComment.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.HistoryCommentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryCommentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryCommentScalar, + Iterable<_i3.HistoryCommentScalar>>? + distinct, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyHistoryComment', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.HistoryComment.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.HistoryComment> create({ + required _i1.PrismaUnion<_i3.HistoryCommentCreateInput, + _i3.HistoryCommentUncheckedCreateInput> + data, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment>( + action: 'createOneHistoryComment', + result: result, + factory: (e) => _i2.HistoryComment.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.HistoryCommentCreateManyInput, + Iterable<_i3.HistoryCommentCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyHistoryComment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryComment?> update({ + required _i1.PrismaUnion<_i3.HistoryCommentUpdateInput, + _i3.HistoryCommentUncheckedUpdateInput> + data, + required _i3.HistoryCommentWhereUniqueInput where, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment?>( + action: 'updateOneHistoryComment', + result: result, + factory: (e) => e != null ? _i2.HistoryComment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.HistoryCommentUpdateManyMutationInput, + _i3.HistoryCommentUncheckedUpdateManyInput> + data, + _i3.HistoryCommentWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyHistoryComment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryComment> upsert({ + required _i3.HistoryCommentWhereUniqueInput where, + required _i1.PrismaUnion<_i3.HistoryCommentCreateInput, + _i3.HistoryCommentUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.HistoryCommentUpdateInput, + _i3.HistoryCommentUncheckedUpdateInput> + update, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment>( + action: 'upsertOneHistoryComment', + result: result, + factory: (e) => _i2.HistoryComment.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryComment?> delete({ + required _i3.HistoryCommentWhereUniqueInput where, + _i3.HistoryCommentSelect? select, + _i3.HistoryCommentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryComment?>( + action: 'deleteOneHistoryComment', + result: result, + factory: (e) => e != null ? _i2.HistoryComment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.HistoryCommentWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyHistoryComment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.HistoryCommentWhereInput? where, + _i1.PrismaUnion, + _i3.HistoryCommentOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.HistoryCommentScalar> + by, + _i3.HistoryCommentScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.HistoryCommentGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByHistoryComment', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.HistoryCommentGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateHistoryComment> aggregate({ + _i3.HistoryCommentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryCommentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryCommentWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateHistoryCommentSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryComment', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateHistoryComment>( + action: 'aggregateHistoryComment', + result: result, + factory: (e) => _i3.AggregateHistoryComment.fromJson(e), + ); + } +} + +class HistoryAttachmentDelegate { + const HistoryAttachmentDelegate._(this._client); + + final PrismaClient _client; + + _i1.ActionClient<_i2.HistoryAttachment?> findUnique({ + required _i3.HistoryAttachmentWhereUniqueInput where, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.findUnique, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment?>( + action: 'findUniqueHistoryAttachment', + result: result, + factory: (e) => e != null ? _i2.HistoryAttachment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.HistoryAttachment> findUniqueOrThrow({ + required _i3.HistoryAttachmentWhereUniqueInput where, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.findUniqueOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment>( + action: 'findUniqueHistoryAttachmentOrThrow', + result: result, + factory: (e) => _i2.HistoryAttachment.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryAttachment?> findFirst({ + _i3.HistoryAttachmentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryAttachmentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryAttachmentScalar, + Iterable<_i3.HistoryAttachmentScalar>>? + distinct, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.findFirst, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment?>( + action: 'findFirstHistoryAttachment', + result: result, + factory: (e) => e != null ? _i2.HistoryAttachment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i2.HistoryAttachment> findFirstOrThrow({ + _i3.HistoryAttachmentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryAttachmentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryAttachmentScalar, + Iterable<_i3.HistoryAttachmentScalar>>? + distinct, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.findFirstOrThrow, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment>( + action: 'findFirstHistoryAttachmentOrThrow', + result: result, + factory: (e) => _i2.HistoryAttachment.fromJson(e), + ); + } + + _i1.ActionClient> findMany({ + _i3.HistoryAttachmentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryAttachmentWhereUniqueInput? cursor, + int? take, + int? skip, + _i1.PrismaUnion<_i3.HistoryAttachmentScalar, + Iterable<_i3.HistoryAttachmentScalar>>? + distinct, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.findMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'findManyHistoryAttachment', + result: result, + factory: (values) => + (values as Iterable).map((e) => _i2.HistoryAttachment.fromJson(e)), + ); + } + + _i1.ActionClient<_i2.HistoryAttachment> create({ + required _i1.PrismaUnion<_i3.HistoryAttachmentCreateInput, + _i3.HistoryAttachmentUncheckedCreateInput> + data, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'data': data, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.createOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment>( + action: 'createOneHistoryAttachment', + result: result, + factory: (e) => _i2.HistoryAttachment.fromJson(e), + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> createMany({ + required _i1.PrismaUnion<_i3.HistoryAttachmentCreateManyInput, + Iterable<_i3.HistoryAttachmentCreateManyInput>> + data, + bool? skipDuplicates, + }) { + final args = { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.createMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'createManyHistoryAttachment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryAttachment?> update({ + required _i1.PrismaUnion<_i3.HistoryAttachmentUpdateInput, + _i3.HistoryAttachmentUncheckedUpdateInput> + data, + required _i3.HistoryAttachmentWhereUniqueInput where, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'data': data, + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.updateOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment?>( + action: 'updateOneHistoryAttachment', + result: result, + factory: (e) => e != null ? _i2.HistoryAttachment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> updateMany({ + required _i1.PrismaUnion<_i3.HistoryAttachmentUpdateManyMutationInput, + _i3.HistoryAttachmentUncheckedUpdateManyInput> + data, + _i3.HistoryAttachmentWhereInput? where, + }) { + final args = { + 'data': data, + 'where': where, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.updateMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'updateManyHistoryAttachment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryAttachment> upsert({ + required _i3.HistoryAttachmentWhereUniqueInput where, + required _i1.PrismaUnion<_i3.HistoryAttachmentCreateInput, + _i3.HistoryAttachmentUncheckedCreateInput> + create, + required _i1.PrismaUnion<_i3.HistoryAttachmentUpdateInput, + _i3.HistoryAttachmentUncheckedUpdateInput> + update, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'create': create, + 'update': update, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.upsertOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment>( + action: 'upsertOneHistoryAttachment', + result: result, + factory: (e) => _i2.HistoryAttachment.fromJson(e), + ); + } + + _i1.ActionClient<_i2.HistoryAttachment?> delete({ + required _i3.HistoryAttachmentWhereUniqueInput where, + _i3.HistoryAttachmentSelect? select, + _i3.HistoryAttachmentInclude? include, + }) { + final args = { + 'where': where, + 'select': select, + 'include': include, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.deleteOne, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i2.HistoryAttachment?>( + action: 'deleteOneHistoryAttachment', + result: result, + factory: (e) => e != null ? _i2.HistoryAttachment.fromJson(e) : null, + ); + } + + _i1.ActionClient<_i3.AffectedRowsOutput> deleteMany( + {_i3.HistoryAttachmentWhereInput? where}) { + final args = {'where': where}; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.deleteMany, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AffectedRowsOutput>( + action: 'deleteManyHistoryAttachment', + result: result, + factory: (e) => _i3.AffectedRowsOutput.fromJson(e), + ); + } + + _i1.ActionClient> groupBy({ + _i3.HistoryAttachmentWhereInput? where, + _i1.PrismaUnion, + _i3.HistoryAttachmentOrderByWithAggregationInput>? + orderBy, + required _i1.PrismaUnion, + _i3.HistoryAttachmentScalar> + by, + _i3.HistoryAttachmentScalarWhereWithAggregatesInput? having, + int? take, + int? skip, + _i3.HistoryAttachmentGroupByOutputTypeSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'by': _i1.JsonQuery.groupBySerializer(by), + 'having': having, + 'take': take, + 'skip': skip, + 'select': select ?? _i1.JsonQuery.groupBySelectSerializer(by), + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.groupBy, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient>( + action: 'groupByHistoryAttachment', + result: result, + factory: (values) => (values as Iterable) + .map((e) => _i3.HistoryAttachmentGroupByOutputType.fromJson(e)), + ); + } + + _i1.ActionClient<_i3.AggregateHistoryAttachment> aggregate({ + _i3.HistoryAttachmentWhereInput? where, + _i1.PrismaUnion< + Iterable< + _i3 + .HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>, + _i3.HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput>? + orderBy, + _i3.HistoryAttachmentWhereUniqueInput? cursor, + int? take, + int? skip, + _i3.AggregateHistoryAttachmentSelect? select, + }) { + final args = { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'select': select, + }; + final query = _i1.serializeJsonQuery( + args: args, + modelName: 'HistoryAttachment', + action: _i1.JsonQueryAction.aggregate, + datamodel: PrismaClient.datamodel, + ); + final result = _client._engine.request( + query, + headers: _client.$transaction.headers, + transaction: _client.$transaction.transaction, + ); + return _i1.ActionClient<_i3.AggregateHistoryAttachment>( + action: 'aggregateHistoryAttachment', + result: result, + factory: (e) => _i3.AggregateHistoryAttachment.fromJson(e), + ); + } +} + +class PrismaClient { + const PrismaClient._( + this._engine, + this.$transaction, + this.$metrics, + ); + + factory PrismaClient({ + String? datasourceUrl, + Map? datasources, + }) { + datasources ??= { + 'db': + 'postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public' + }; + if (datasourceUrl != null) { + datasources = datasources.map(( + key, + value, + ) => + MapEntry( + key, + datasourceUrl, + )); + } + final engine = _i4.BinaryEngine( + schema: + 'generator client {\n provider = "dart run orm"\n previewFeatures = ["fullTextSearch", "fullTextIndex"]\n}\n\ndatasource db {\n provider = "mysql"\n url = env("DATABASE_URL")\n relationMode = "prisma"\n}\n\nmodel Soggetto {\n uuid String @id @default(uuid())\n ragioneSociale String\n iban String?\n tipo TipoSoggetto\n negozioPreferitoUuid String?\n codiceFiscale String? @unique\n note String?\n soggettoBusinessInfo SoggettoBusinessInfo?\n domicili Domicilio[]\n praticheIntestate Pratica[]\n contratti Contratto[]\n indirizziEmail IndirizzoEmail[]\n numeriTelefono NumeroTelefono[]\n negozioPreferito Negozio? @relation(fields: [negozioPreferitoUuid], references: [codice])\n prodottiOrdinati Ordine[]\n leads Lead[]\n // TODO remove nullability after upgrade to Prisma > 4.x\n privacy Privacy?\n\n @@index([negozioPreferitoUuid])\n @@index([tipo])\n}\n\nmodel Privacy {\n uuid String @id @default(uuid())\n trattamento Boolean @default(true)\n comunicazione Boolean @default(false)\n profilazione Boolean @default(false)\n soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade)\n soggettoUuid String? @unique\n}\n\nmodel SoggettoBusinessInfo {\n uuid String @id @default(uuid())\n rea String?\n partitaIVA String @unique\n sdi String?\n soggettoUuid String @unique\n legaleRappresentante LegaleRappresentante?\n referente Referente?\n soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade)\n\n @@index([soggettoUuid])\n}\n\nmodel LegaleRappresentante {\n uuid String @id @default(uuid())\n nome String\n cognome String\n soggettoBusinessInfoUuid String @unique\n numeroTelefono NumeroTelefono?\n indirizzoEmail IndirizzoEmail?\n soggettoBusinessInfo SoggettoBusinessInfo @relation(fields: [soggettoBusinessInfoUuid], references: [uuid])\n}\n\nmodel Referente {\n uuid String @id @default(uuid())\n nome String\n cognome String\n soggettoBusinessInfoUuid String @unique\n numeroTelefono NumeroTelefono?\n indirizzoEmail IndirizzoEmail?\n soggettoBusinessInfo SoggettoBusinessInfo @relation(fields: [soggettoBusinessInfoUuid], references: [uuid])\n}\n\nmodel IndirizzoEmail {\n uuid String @id @default(uuid())\n indirizzo String\n etichetta String?\n soggettoUuid String?\n legaleRappresentanteUuid String? @unique\n referenteUuid String? @unique\n soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade)\n referente Referente? @relation(fields: [referenteUuid], references: [uuid])\n legaleRappresentante LegaleRappresentante? @relation(fields: [legaleRappresentanteUuid], references: [uuid])\n\n @@unique([indirizzo, soggettoUuid])\n @@index([soggettoUuid])\n}\n\nmodel NumeroTelefono {\n uuid String @id @default(uuid())\n numero String\n etichetta String?\n soggettoUuid String?\n legaleRappresentateUuid String? @unique\n referenteUuid String? @unique\n soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade)\n legaleRappresentate LegaleRappresentante? @relation(fields: [legaleRappresentateUuid], references: [uuid])\n referente Referente? @relation(fields: [referenteUuid], references: [uuid])\n\n @@unique([numero, soggettoUuid])\n @@index([soggettoUuid])\n}\n\nmodel Domicilio {\n uuid String @id @default(uuid())\n etichetta String?\n indirizzo String?\n numeroCivico String?\n citta String?\n cap String?\n provincia String?\n soggettoUuid String\n soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade)\n contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[]\n forniture Fornitura[]\n contrattiEnelFibra ContrattoEnelFibra[]\n prodottiOrdinati Ordine[]\n leads Lead[]\n\n @@index([soggettoUuid])\n}\n\nmodel ServizioEwo {\n id String @id\n nome String @unique\n fornitoreId String\n tipoServizioEwo TipoServizioEwo\n fornitore Fornitore @relation(fields: [fornitoreId], references: [id])\n tipiPratiche TipoPratica[]\n colore String\n icona String\n forniture Fornitura[]\n statiPossibiliPratiche StatoPratica[]\n statiPossibiliContratti StatoContratto[]\n offerte Offerta[]\n moduliContratto ModuloContratto[]\n\n @@index([fornitoreId])\n}\n\nmodel Fornitura {\n uuid String @id @default(uuid())\n etichetta String?\n domicilioUuid String\n servizioEwoId String\n domicilio Domicilio @relation(fields: [domicilioUuid], references: [uuid], onDelete: Cascade)\n servizioEwo ServizioEwo @relation(fields: [servizioEwoId], references: [id])\n fornituraLuce FornituraLuce?\n fornituraGas FornituraGas?\n\n @@index([domicilioUuid])\n @@index([servizioEwoId])\n}\n\nmodel FornituraLuce {\n uuid String @id @default(uuid())\n pod String @unique\n fornituraUuid String @unique\n potenza Float?\n tensione Float?\n consumoAnnuoLuce ConsumoAnnuoLuce?\n contrattiEnelLuce ContrattoEnelLuce[]\n fornitura Fornitura @relation(fields: [fornituraUuid], references: [uuid], onDelete: Cascade)\n\n @@index([fornituraUuid])\n}\n\nmodel ConsumoAnnuoLuce {\n uuid String @id @default(uuid())\n consumo Float\n meseRiferimentoConsumoAnnuo DateTime\n fornituraLuceUuid String @unique\n fornituraLuce FornituraLuce @relation(fields: [fornituraLuceUuid], references: [uuid], onDelete: Cascade)\n\n @@index([meseRiferimentoConsumoAnnuo, fornituraLuceUuid])\n @@index([fornituraLuceUuid])\n}\n\nmodel FornituraGas {\n uuid String @id @default(uuid())\n pdr String @unique\n fornituraUuid String @unique\n classeMisuratoreGasId String?\n matricolaContatore String?\n remi String?\n classeMisuratore ClasseMisuratoreGas? @relation(fields: [classeMisuratoreGasId], references: [id])\n consumoAnnuoGas ConsumoAnnuoGas?\n contrattiEnelGas ContrattoEnelGas[]\n fornitura Fornitura @relation(fields: [fornituraUuid], references: [uuid], onDelete: Cascade)\n\n @@index([classeMisuratoreGasId])\n @@index([fornituraUuid])\n}\n\nmodel ConsumoAnnuoGas {\n uuid String @id @default(uuid())\n consumo Float\n meseRiferimentoConsumoAnnuo DateTime\n fornituraGasUuid String @unique\n fornituraGas FornituraGas @relation(fields: [fornituraGasUuid], references: [uuid], onDelete: Cascade)\n\n @@index([meseRiferimentoConsumoAnnuo, fornituraGasUuid])\n @@index([fornituraGasUuid])\n}\n\nmodel Contratto {\n uuid String @id @default(uuid())\n codice String @unique\n dataInserimento DateTime @default(now())\n dataAttivazione DateTime?\n ultimoAggiornamentoStato DateTime?\n trend Boolean?\n nota String?\n marketingEnelEnergia Boolean @default(false)\n marketingGruppoEnel Boolean @default(false)\n profilazioneEnelEnergia Boolean @default(false)\n bollettaWeb Boolean @default(false)\n rid Boolean @default(false)\n dataCessazione DateTime?\n mesiDurata Int?\n offertaUuid String?\n contrattiEnelLuce ContrattoEnelLuce[]\n contrattiEnelGas ContrattoEnelGas[]\n contrattiEnelFibra ContrattoEnelFibra[]\n contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[]\n stato StatoContratto @relation(fields: [statoContrattoId], references: [id])\n statoContrattoId String\n soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid])\n soggettoUuid String?\n utente Utente? @relation(fields: [utenteUuid], references: [uuid])\n utenteUuid String?\n negozio Negozio? @relation(fields: [negozioCodice], references: [codice])\n negozioCodice String?\n pratica Pratica? @relation(fields: [praticaUuid], references: [uuid])\n praticaUuid String?\n modulo ModuloContratto? @relation(fields: [moduloContrattoId], references: [id])\n moduloContrattoId String?\n\n @@index([statoContrattoId])\n @@index([praticaUuid])\n @@index([negozioCodice])\n @@index([utenteUuid])\n @@index([soggettoUuid])\n @@index([offertaUuid])\n @@index([moduloContrattoId])\n @@index([dataInserimento])\n}\n\nmodel ModuloContratto {\n id String @id\n nome String @unique\n fornitoreId String\n clienteTarget TipoSoggetto\n canale Canale\n serviziEwoCollegabili ServizioEwo[]\n contratti Contratto[]\n fornitore Fornitore @relation(fields: [fornitoreId], references: [id])\n tipoModulo TipoModuloContratto @relation(fields: [tipoModuloContrattoId], references: [id])\n tipoModuloContrattoId String\n\n @@index([tipoModuloContrattoId])\n @@index([fornitoreId])\n @@index([canale])\n}\n\nmodel TipoModuloContratto {\n id String @id\n nome String\n numeroOfferteCollegabili Int\n ModuloContratto ModuloContratto[]\n}\n\nmodel StatoContratto {\n id String @id\n nome String\n contratti Contratto[]\n serviziEwo ServizioEwo[]\n contrattiEnelLuce ContrattoEnelLuce[]\n contrattiEnelGas ContrattoEnelGas[]\n contrattiEnelFibra ContrattoEnelFibra[]\n contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[]\n}\n\nmodel Offerta {\n uuid String @id @default(uuid())\n nome String @unique\n dataFineOfferta DateTime\n dataInizioOfferta DateTime\n servizioEwoId String\n servizioEwo ServizioEwo @relation(fields: [servizioEwoId], references: [id])\n contrattiEnelLuce ContrattoEnelLuce[]\n contrattiEnelGas ContrattoEnelGas[]\n contrattiEnelFibra ContrattoEnelFibra[]\n contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[]\n offerteIncluse Offerta[] @relation("OfferteIncluse")\n inclusaInOfferte Offerta[] @relation("OfferteIncluse")\n\n @@index([servizioEwoId])\n}\n\nmodel Pratica {\n uuid String @id @default(uuid())\n codice String\n dataInserimento DateTime @default(now())\n tipoPraticaId String\n soggettoUuid String?\n utenteUuid String?\n negozioCodice String?\n statoPraticaId String?\n ultimoAggiornamentoStato DateTime?\n tipoPratica TipoPratica @relation(fields: [tipoPraticaId], references: [id])\n soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid])\n utente Utente? @relation(fields: [utenteUuid], references: [uuid])\n negozio Negozio? @relation(fields: [negozioCodice], references: [codice])\n stato StatoPratica? @relation(fields: [statoPraticaId], references: [id])\n contratto Contratto[]\n\n @@unique([codice, tipoPraticaId], name: "codicePratica_tipoPratica")\n @@index([tipoPraticaId])\n @@index([statoPraticaId])\n @@index([negozioCodice])\n @@index([utenteUuid])\n @@index([soggettoUuid])\n}\n\nmodel TipoPratica {\n id String @id\n nome String @unique\n serviziEwo ServizioEwo[]\n pratiche Pratica[]\n}\n\nmodel StatoPratica {\n id String @id\n nome String\n pratiche Pratica[]\n serviziEwo ServizioEwo[]\n}\n\nmodel ContrattoEnelLuce {\n uuid String @id @default(uuid())\n statoContrattoId String\n fornituraLuceUuid String\n contrattoUuid String\n offertaUuid String?\n stato StatoContratto @relation(fields: [statoContrattoId], references: [id])\n fornituraLuce FornituraLuce @relation(fields: [fornituraLuceUuid], references: [uuid], onDelete: Cascade)\n contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade)\n offerta Offerta? @relation(fields: [offertaUuid], references: [uuid])\n\n @@index([statoContrattoId])\n @@index([contrattoUuid])\n @@index([fornituraLuceUuid])\n @@index([offertaUuid])\n}\n\nmodel ContrattoEnelGas {\n uuid String @id @default(uuid())\n statoContrattoId String\n fornituraGasUuid String\n contrattoUuid String\n offertaUuid String?\n stato StatoContratto @relation(fields: [statoContrattoId], references: [id])\n fornituraGas FornituraGas @relation(fields: [fornituraGasUuid], references: [uuid], onDelete: Cascade)\n contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade)\n offerta Offerta? @relation(fields: [offertaUuid], references: [uuid])\n\n @@index([statoContrattoId])\n @@index([fornituraGasUuid])\n @@index([contrattoUuid])\n @@index([offertaUuid])\n}\n\nmodel ContrattoEnelXAssicurazione {\n uuid String @id @default(uuid())\n statoContrattoId String\n contrattoUuid String\n domicilioUuid String\n offertaUuid String?\n stato StatoContratto @relation(fields: [statoContrattoId], references: [id])\n contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade)\n domicilio Domicilio @relation(fields: [domicilioUuid], references: [uuid], onDelete: Cascade)\n offerta Offerta? @relation(fields: [offertaUuid], references: [uuid])\n\n @@index([statoContrattoId])\n @@index([contrattoUuid])\n @@index([domicilioUuid])\n @@index([offertaUuid])\n}\n\nmodel ContrattoEnelFibra {\n uuid String @id @default(uuid())\n statoContrattoId String\n contrattoUuid String\n servizioContrattoEnelFibra ServizioContrattoEnelFibra\n tipoContrattoEnelFibra TipoContrattoEnelFibra\n tecnologiaContrattoEnelFibra TecnologiaContrattoEnelFibra\n domicilioUuid String?\n offertaUuid String?\n stato StatoContratto @relation(fields: [statoContrattoId], references: [id])\n contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade)\n offerta Offerta? @relation(fields: [offertaUuid], references: [uuid])\n domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid])\n\n @@index([statoContrattoId])\n @@index([contrattoUuid])\n @@index([offertaUuid])\n @@index([domicilioUuid])\n}\n\nmodel ClasseMisuratoreGas {\n portataMin Float\n portataNominale Float\n portataMax Float\n id String @id\n classe String @unique\n fornituraGas FornituraGas[]\n}\n\nmodel Fornitore {\n id String @id\n nome String @unique\n serviziEwo ServizioEwo[]\n moduliContratto ModuloContratto[]\n prodotti Prodotto[]\n}\n\n/// Model for "Prodotti" sold to "Clienti"\nmodel Ordine {\n /// Unique identifier\n uuid String @id @default(uuid())\n codice String @unique\n /// Date when the "Prodotto" was sold\n dataInserimento DateTime @default(now())\n /// Valore dell\'ordine preventivato dall\'agente\n valore Float\n /// The "Prodotti" sold\n prodotti Prodotto[]\n /// The "Cliente" who bought the "Prodotto"\n soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid])\n soggettoUuid String\n /// The "Domicilio" linked to this "Prodotto" (and usually used in)\n domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid])\n domicilioUuid String?\n\n statoOrdine StatoOrdine? @relation(fields: [statoOrdineId], references: [id])\n statoOrdineId String?\n\n lead Lead? @relation(fields: [leadUuid], references: [uuid])\n leadUuid String?\n\n utente Utente @relation(fields: [utenteUuid], references: [uuid])\n utenteUuid String\n negozio Negozio? @relation(fields: [negozioCodice], references: [codice])\n negozioCodice String?\n\n @@index([soggettoUuid])\n @@index([domicilioUuid])\n @@index([statoOrdineId])\n @@index([leadUuid])\n @@index([utenteUuid])\n @@index([negozioCodice])\n}\n\nmodel StatoOrdine {\n id String @id\n nome String\n ordini Ordine[]\n tipoStato TipoStato\n /// ordinamento del progresso degli stati\n ordine Int\n colore String\n}\n\n/// Model of unique "Prodotti" sellable to the "Clienti"\nmodel Prodotto {\n uuid String @id @default(uuid())\n /// Name of the product\n modello String\n /// Price of the product\n prezzo Float?\n /// Tells if the product is available for sale\n vendibileDal DateTime?\n /// Tells if the product is still available for sale\n vendibileAl DateTime?\n /// The "Produttore" of this "Prodotto"\n produttore Produttore @relation(fields: [produttoreId], references: [id])\n produttoreId String\n /// The "Prodotti Rivenduti" of this prodotto\n prodottiOrdinati Ordine[]\n /// The "Fornitore" of this "Prodotto"\n fornitore Fornitore @relation(fields: [fornitoreId], references: [id])\n fornitoreId String\n tipoProdotto TipoProdotto @relation(fields: [tipoProdottoId], references: [id])\n tipoProdottoId String\n\n @@index([produttoreId])\n @@index([fornitoreId])\n @@index([tipoProdottoId])\n}\n\nmodel TipoProdotto {\n id String @id\n nome String @unique\n\n prodotti Prodotto[]\n}\n\n/// Model of unique "Produttori"\nmodel Produttore {\n /// Unique identifier\n id String @id\n /// Name of the "Produttore"\n nome String @unique\n\n /// The "Prodotti" produced by this "Produttore"\n prodotti Prodotto[]\n}\n\nmodel Utente {\n uuid String @id @default(uuid())\n firebaseUid String? @unique\n email String @unique\n ruolo RuoloUtente\n photoUrl String?\n negozioCodice String?\n nomeVisualizzato String\n negozio Negozio? @relation(fields: [negozioCodice], references: [codice])\n contratti Contratto[]\n pratiche Pratica[]\n ingressi Ingressi[]\n leadsGestiti Lead[] @relation(name: "LeadsGestore")\n leadsAssegnati Lead[] @relation(name: "LeadsAgente")\n opportunitaGestite Opportunita[] @relation(name: "GestoriLead")\n opportunitaAssegnate Opportunita[] @relation(name: "Agenti")\n ordini Ordine[]\n history History[]\n\n @@index([negozioCodice])\n}\n\nmodel Negozio {\n codice String @id\n nome String @unique\n pratiche Pratica[]\n utenti Utente[]\n contratti Contratto[]\n soggetti Soggetto[]\n zonaNegozio ZonaNegozio @relation(fields: [zonaNegozioId], references: [id])\n zonaNegozioId String\n ingressi Ingressi[]\n leads Lead[]\n Ordine Ordine[]\n\n @@index([zonaNegozioId])\n}\n\nmodel Ingressi {\n uuid String @id @default(uuid())\n data DateTime\n clienti Int\n nonClienti Int\n utenteUuid String\n negozioCodice String\n utente Utente @relation(fields: [utenteUuid], references: [uuid])\n negozio Negozio @relation(fields: [negozioCodice], references: [codice])\n\n @@index([data])\n @@index([negozioCodice])\n @@index([utenteUuid])\n}\n\nmodel ZonaNegozio {\n id String @id\n nome String @unique\n negozi Negozio[]\n}\n\nmodel Lead {\n uuid String @id @default(uuid())\n opportunita Opportunita @relation(fields: [opportunitaUuid], references: [uuid])\n opportunitaUuid String\n soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid])\n soggettoUuid String\n domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid])\n domicilioUuid String?\n statoOpportunita StatoOpportunita @relation(fields: [statoOpportunitaUuid], references: [uuid])\n statoOpportunitaUuid String\n utente Utente? @relation(fields: [utenteUuid], references: [uuid], name: "LeadsGestore")\n utenteUuid String?\n negozio Negozio? @relation(fields: [negozioCodice], references: [codice])\n negozioCodice String?\n agente Utente? @relation(fields: [agenteUuid], references: [uuid], name: "LeadsAgente")\n agenteUuid String?\n appuntamenti String? @db.MediumText\n form String? @db.MediumText\n dataInserimento DateTime?\n dataScadenza DateTime?\n dataAppuntamento DateTime?\n nota String?\n ordine Ordine[]\n history History[]\n\n @@index([utenteUuid])\n @@index([domicilioUuid])\n @@index([opportunitaUuid])\n @@index([soggettoUuid])\n @@index([statoOpportunitaUuid])\n @@index([agenteUuid])\n @@index([negozioCodice])\n}\n\nmodel Opportunita {\n uuid String @id @default(uuid())\n nome String\n dataInizio DateTime?\n dataFine DateTime?\n leads Lead[]\n form String? @db.MediumText\n gestoriLead Utente[] @relation(name: "GestoriLead")\n agenti Utente[] @relation(name: "Agenti")\n}\n\nmodel StatoOpportunita {\n uuid String @id @default(uuid())\n nome String\n tipoStato TipoStato?\n /// ordinamento del progresso degli stati\n ordine Int?\n colore String\n opportunitaUuid String\n leads Lead[]\n\n @@index([opportunitaUuid])\n @@index([ordine])\n}\n\nmodel History {\n uuid String @id @default(uuid())\n timestamp DateTime\n\n event String\n\n // History types\n comment HistoryComment?\n attachment HistoryAttachment?\n\n // Semantic Tables\n Utente Utente @relation(fields: [utenteUuid], references: [uuid], onDelete: Cascade)\n utenteUuid String\n\n Lead Lead? @relation(fields: [leadUuid], references: [uuid], onDelete: Cascade)\n leadUuid String?\n\n @@index([utenteUuid])\n @@index([leadUuid])\n}\n\nmodel HistoryComment {\n comment String\n\n History History @relation(fields: [historyUuid], references: [uuid])\n historyUuid String @unique\n}\n\nmodel HistoryAttachment {\n url String\n name String\n\n History History @relation(fields: [historyUuid], references: [uuid])\n historyUuid String @unique\n}\n\nenum TipoServizioEwo {\n FORNITURA\n DOMICILIO\n}\n\nenum TipoSoggetto {\n CONSUMER\n BUSINESS\n}\n\nenum Canale {\n SEP\n NEVE\n CORPORATE\n}\n\nenum ServizioContrattoEnelFibra {\n DATI\n DATI_VOCE\n}\n\nenum TipoContrattoEnelFibra {\n NUOVA_ATTIVAZIONE\n MIGRAZIONE\n}\n\nenum TecnologiaContrattoEnelFibra {\n FTTH\n FTTC\n}\n\nenum RuoloUtente {\n CONSULENTE\n AGENTE\n OPERATORE\n RESPONSABILE\n AMMINISTRATORE\n DEVELOPER\n}\n\nenum TipoStato {\n DA_FARE\n IN_CORSO\n COMPLETATO\n CANCELLATO\n}\n', + datasources: datasources, + ); + final metrics = _i1.MetricsClient(engine); + createClientWithTransaction( + _i1.TransactionClient transaction) => + PrismaClient._( + engine, + transaction, + metrics, + ); + final transaction = _i1.TransactionClient( + engine, + createClientWithTransaction, + ); + return createClientWithTransaction(transaction); + } + + static final datamodel = _i5.DataModel.fromJson({ + 'enums': [ + { + 'name': 'TipoServizioEwo', + 'values': [ + { + 'name': 'FORNITURA', + 'dbName': null, + }, + { + 'name': 'DOMICILIO', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'TipoSoggetto', + 'values': [ + { + 'name': 'CONSUMER', + 'dbName': null, + }, + { + 'name': 'BUSINESS', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'Canale', + 'values': [ + { + 'name': 'SEP', + 'dbName': null, + }, + { + 'name': 'NEVE', + 'dbName': null, + }, + { + 'name': 'CORPORATE', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'ServizioContrattoEnelFibra', + 'values': [ + { + 'name': 'DATI', + 'dbName': null, + }, + { + 'name': 'DATI_VOCE', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'TipoContrattoEnelFibra', + 'values': [ + { + 'name': 'NUOVA_ATTIVAZIONE', + 'dbName': null, + }, + { + 'name': 'MIGRAZIONE', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'TecnologiaContrattoEnelFibra', + 'values': [ + { + 'name': 'FTTH', + 'dbName': null, + }, + { + 'name': 'FTTC', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'RuoloUtente', + 'values': [ + { + 'name': 'CONSULENTE', + 'dbName': null, + }, + { + 'name': 'AGENTE', + 'dbName': null, + }, + { + 'name': 'OPERATORE', + 'dbName': null, + }, + { + 'name': 'RESPONSABILE', + 'dbName': null, + }, + { + 'name': 'AMMINISTRATORE', + 'dbName': null, + }, + { + 'name': 'DEVELOPER', + 'dbName': null, + }, + ], + 'dbName': null, + }, + { + 'name': 'TipoStato', + 'values': [ + { + 'name': 'DA_FARE', + 'dbName': null, + }, + { + 'name': 'IN_CORSO', + 'dbName': null, + }, + { + 'name': 'COMPLETATO', + 'dbName': null, + }, + { + 'name': 'CANCELLATO', + 'dbName': null, + }, + ], + 'dbName': null, + }, + ], + 'models': [ + { + 'name': 'Soggetto', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ragioneSociale', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'iban', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipo', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoSoggetto', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioPreferitoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'codiceFiscale', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'note', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoBusinessInfo', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'SoggettoBusinessInfo', + 'relationName': 'SoggettoToSoggettoBusinessInfo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicili', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'DomicilioToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'praticheIntestate', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'PraticaToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'indirizziEmail', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'IndirizzoEmail', + 'relationName': 'IndirizzoEmailToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numeriTelefono', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'NumeroTelefono', + 'relationName': 'NumeroTelefonoToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioPreferito', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'NegozioToSoggetto', + 'relationFromFields': ['negozioPreferitoUuid'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'prodottiOrdinati', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'OrdineToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leads', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'privacy', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Privacy', + 'relationName': 'PrivacyToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Privacy', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'trattamento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': true, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'comunicazione', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'profilazione', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'PrivacyToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'SoggettoBusinessInfo', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'rea', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'partitaIVA', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'sdi', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'legaleRappresentante', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'LegaleRappresentante', + 'relationName': 'LegaleRappresentanteToSoggettoBusinessInfo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'referente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Referente', + 'relationName': 'ReferenteToSoggettoBusinessInfo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'SoggettoToSoggettoBusinessInfo', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'LegaleRappresentante', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'cognome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoBusinessInfoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numeroTelefono', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'NumeroTelefono', + 'relationName': 'LegaleRappresentanteToNumeroTelefono', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'indirizzoEmail', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'IndirizzoEmail', + 'relationName': 'IndirizzoEmailToLegaleRappresentante', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoBusinessInfo', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'SoggettoBusinessInfo', + 'relationName': 'LegaleRappresentanteToSoggettoBusinessInfo', + 'relationFromFields': ['soggettoBusinessInfoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Referente', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'cognome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoBusinessInfoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numeroTelefono', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'NumeroTelefono', + 'relationName': 'NumeroTelefonoToReferente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'indirizzoEmail', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'IndirizzoEmail', + 'relationName': 'IndirizzoEmailToReferente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoBusinessInfo', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'SoggettoBusinessInfo', + 'relationName': 'ReferenteToSoggettoBusinessInfo', + 'relationFromFields': ['soggettoBusinessInfoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'IndirizzoEmail', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'indirizzo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'etichetta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'legaleRappresentanteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'referenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'IndirizzoEmailToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'referente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Referente', + 'relationName': 'IndirizzoEmailToReferente', + 'relationFromFields': ['referenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'legaleRappresentante', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'LegaleRappresentante', + 'relationName': 'IndirizzoEmailToLegaleRappresentante', + 'relationFromFields': ['legaleRappresentanteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [ + [ + 'indirizzo', + 'soggettoUuid', + ] + ], + 'uniqueIndexes': [ + { + 'name': null, + 'fields': [ + 'indirizzo', + 'soggettoUuid', + ], + } + ], + 'isGenerated': false, + }, + { + 'name': 'NumeroTelefono', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numero', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'etichetta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'legaleRappresentateUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'referenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'NumeroTelefonoToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'legaleRappresentate', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'LegaleRappresentante', + 'relationName': 'LegaleRappresentanteToNumeroTelefono', + 'relationFromFields': ['legaleRappresentateUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'referente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Referente', + 'relationName': 'NumeroTelefonoToReferente', + 'relationFromFields': ['referenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [ + [ + 'numero', + 'soggettoUuid', + ] + ], + 'uniqueIndexes': [ + { + 'name': null, + 'fields': [ + 'numero', + 'soggettoUuid', + ], + } + ], + 'isGenerated': false, + }, + { + 'name': 'Domicilio', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'etichetta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'indirizzo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numeroCivico', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'citta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'cap', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'provincia', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'DomicilioToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelXAssicurazione', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelXAssicurazione', + 'relationName': 'ContrattoEnelXAssicurazioneToDomicilio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'forniture', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitura', + 'relationName': 'DomicilioToFornitura', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelFibra', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelFibra', + 'relationName': 'ContrattoEnelFibraToDomicilio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'prodottiOrdinati', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'DomicilioToOrdine', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leads', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'DomicilioToLead', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ServizioEwo', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitoreId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoServizioEwo', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoServizioEwo', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitore', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitore', + 'relationName': 'FornitoreToServizioEwo', + 'relationFromFields': ['fornitoreId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipiPratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoPratica', + 'relationName': 'ServizioEwoToTipoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'colore', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'icona', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'forniture', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitura', + 'relationName': 'FornituraToServizioEwo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statiPossibiliPratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoPratica', + 'relationName': 'ServizioEwoToStatoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statiPossibiliContratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ServizioEwoToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerte', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'OffertaToServizioEwo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'moduliContratto', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ModuloContratto', + 'relationName': 'ModuloContrattoToServizioEwo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Fornitura', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'etichetta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilioUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'servizioEwoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilio', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'DomicilioToFornitura', + 'relationFromFields': ['domicilioUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'servizioEwo', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'FornituraToServizioEwo', + 'relationFromFields': ['servizioEwoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraLuce', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraLuce', + 'relationName': 'FornituraToFornituraLuce', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGas', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraGas', + 'relationName': 'FornituraToFornituraGas', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'FornituraLuce', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pod', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'potenza', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tensione', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'consumoAnnuoLuce', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ConsumoAnnuoLuce', + 'relationName': 'ConsumoAnnuoLuceToFornituraLuce', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelLuce', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelLuce', + 'relationName': 'ContrattoEnelLuceToFornituraLuce', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitura', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitura', + 'relationName': 'FornituraToFornituraLuce', + 'relationFromFields': ['fornituraUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ConsumoAnnuoLuce', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'consumo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'meseRiferimentoConsumoAnnuo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraLuceUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraLuce', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraLuce', + 'relationName': 'ConsumoAnnuoLuceToFornituraLuce', + 'relationFromFields': ['fornituraLuceUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'FornituraGas', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pdr', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'classeMisuratoreGasId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'matricolaContatore', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'remi', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'classeMisuratore', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ClasseMisuratoreGas', + 'relationName': 'ClasseMisuratoreGasToFornituraGas', + 'relationFromFields': ['classeMisuratoreGasId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'consumoAnnuoGas', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ConsumoAnnuoGas', + 'relationName': 'ConsumoAnnuoGasToFornituraGas', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelGas', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelGas', + 'relationName': 'ContrattoEnelGasToFornituraGas', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitura', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitura', + 'relationName': 'FornituraToFornituraGas', + 'relationFromFields': ['fornituraUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ConsumoAnnuoGas', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'consumo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'meseRiferimentoConsumoAnnuo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGasUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGas', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraGas', + 'relationName': 'ConsumoAnnuoGasToFornituraGas', + 'relationFromFields': ['fornituraGasUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Contratto', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'codice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInserimento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'DateTime', + 'default': { + 'name': 'now', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataAttivazione', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ultimoAggiornamentoStato', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'trend', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Boolean', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nota', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'marketingEnelEnergia', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'marketingGruppoEnel', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'profilazioneEnelEnergia', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'bollettaWeb', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'rid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'Boolean', + 'default': false, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataCessazione', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'mesiDurata', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offertaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelLuce', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelLuce', + 'relationName': 'ContrattoToContrattoEnelLuce', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelGas', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelGas', + 'relationName': 'ContrattoToContrattoEnelGas', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelFibra', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelFibra', + 'relationName': 'ContrattoToContrattoEnelFibra', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelXAssicurazione', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelXAssicurazione', + 'relationName': 'ContrattoToContrattoEnelXAssicurazione', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ContrattoToStatoContratto', + 'relationFromFields': ['statoContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'ContrattoToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'ContrattoToUtente', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'ContrattoToNegozio', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pratica', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'ContrattoToPratica', + 'relationFromFields': ['praticaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'praticaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'modulo', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ModuloContratto', + 'relationName': 'ContrattoToModuloContratto', + 'relationFromFields': ['moduloContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'moduloContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ModuloContratto', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitoreId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'clienteTarget', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoSoggetto', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'canale', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Canale', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'serviziEwoCollegabili', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'ModuloContrattoToServizioEwo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToModuloContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornitore', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitore', + 'relationName': 'FornitoreToModuloContratto', + 'relationFromFields': ['fornitoreId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoModulo', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoModuloContratto', + 'relationName': 'ModuloContrattoToTipoModuloContratto', + 'relationFromFields': ['tipoModuloContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoModuloContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'TipoModuloContratto', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'numeroOfferteCollegabili', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ModuloContratto', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ModuloContratto', + 'relationName': 'ModuloContrattoToTipoModuloContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'StatoContratto', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'serviziEwo', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'ServizioEwoToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelLuce', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelLuce', + 'relationName': 'ContrattoEnelLuceToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelGas', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelGas', + 'relationName': 'ContrattoEnelGasToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelFibra', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelFibra', + 'relationName': 'ContrattoEnelFibraToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelXAssicurazione', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelXAssicurazione', + 'relationName': 'ContrattoEnelXAssicurazioneToStatoContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Offerta', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataFineOfferta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInizioOfferta', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'servizioEwoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'servizioEwo', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'OffertaToServizioEwo', + 'relationFromFields': ['servizioEwoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelLuce', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelLuce', + 'relationName': 'ContrattoEnelLuceToOfferta', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelGas', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelGas', + 'relationName': 'ContrattoEnelGasToOfferta', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelFibra', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelFibra', + 'relationName': 'ContrattoEnelFibraToOfferta', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattiEnelXAssicurazione', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ContrattoEnelXAssicurazione', + 'relationName': 'ContrattoEnelXAssicurazioneToOfferta', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerteIncluse', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'OfferteIncluse', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'inclusaInOfferte', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'OfferteIncluse', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Pratica', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'codice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInserimento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'DateTime', + 'default': { + 'name': 'now', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoPraticaId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoPraticaId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ultimoAggiornamentoStato', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoPratica', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoPratica', + 'relationName': 'PraticaToTipoPratica', + 'relationFromFields': ['tipoPraticaId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'PraticaToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'PraticaToUtente', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'NegozioToPratica', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoPratica', + 'relationName': 'PraticaToStatoPratica', + 'relationFromFields': ['statoPraticaId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratto', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [ + [ + 'codice', + 'tipoPraticaId', + ] + ], + 'uniqueIndexes': [ + { + 'name': 'codicePratica_tipoPratica', + 'fields': [ + 'codice', + 'tipoPraticaId', + ], + } + ], + 'isGenerated': false, + }, + { + 'name': 'TipoPratica', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'serviziEwo', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'ServizioEwoToTipoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'PraticaToTipoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'StatoPratica', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'PraticaToStatoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'serviziEwo', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'ServizioEwoToStatoPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ContrattoEnelLuce', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraLuceUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offertaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ContrattoEnelLuceToStatoContratto', + 'relationFromFields': ['statoContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraLuce', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraLuce', + 'relationName': 'ContrattoEnelLuceToFornituraLuce', + 'relationFromFields': ['fornituraLuceUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToContrattoEnelLuce', + 'relationFromFields': ['contrattoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerta', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'ContrattoEnelLuceToOfferta', + 'relationFromFields': ['offertaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ContrattoEnelGas', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGasUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offertaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ContrattoEnelGasToStatoContratto', + 'relationFromFields': ['statoContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGas', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraGas', + 'relationName': 'ContrattoEnelGasToFornituraGas', + 'relationFromFields': ['fornituraGasUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToContrattoEnelGas', + 'relationFromFields': ['contrattoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerta', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'ContrattoEnelGasToOfferta', + 'relationFromFields': ['offertaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ContrattoEnelXAssicurazione', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilioUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offertaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ContrattoEnelXAssicurazioneToStatoContratto', + 'relationFromFields': ['statoContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToContrattoEnelXAssicurazione', + 'relationFromFields': ['contrattoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilio', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'ContrattoEnelXAssicurazioneToDomicilio', + 'relationFromFields': ['domicilioUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerta', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'ContrattoEnelXAssicurazioneToOfferta', + 'relationFromFields': ['offertaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ContrattoEnelFibra', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoContrattoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contrattoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'servizioContrattoEnelFibra', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioContrattoEnelFibra', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoContrattoEnelFibra', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoContrattoEnelFibra', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tecnologiaContrattoEnelFibra', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TecnologiaContrattoEnelFibra', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilioUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offertaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'stato', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoContratto', + 'relationName': 'ContrattoEnelFibraToStatoContratto', + 'relationFromFields': ['statoContrattoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToContrattoEnelFibra', + 'relationFromFields': ['contrattoUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'offerta', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Offerta', + 'relationName': 'ContrattoEnelFibraToOfferta', + 'relationFromFields': ['offertaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'ContrattoEnelFibraToDomicilio', + 'relationFromFields': ['domicilioUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ClasseMisuratoreGas', + 'dbName': null, + 'fields': [ + { + 'name': 'portataMin', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'portataNominale', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'portataMax', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'classe', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'fornituraGas', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'FornituraGas', + 'relationName': 'ClasseMisuratoreGasToFornituraGas', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Fornitore', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'serviziEwo', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ServizioEwo', + 'relationName': 'FornitoreToServizioEwo', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'moduliContratto', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ModuloContratto', + 'relationName': 'FornitoreToModuloContratto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'prodotti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Prodotto', + 'relationName': 'FornitoreToProdotto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Ordine', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Unique identifier', + }, + { + 'name': 'codice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInserimento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'DateTime', + 'default': { + 'name': 'now', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Date when the "Prodotto" was sold', + }, + { + 'name': 'valore', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Valore dell\'ordine preventivato dall\'agente', + }, + { + 'name': 'prodotti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Prodotto', + 'relationName': 'OrdineToProdotto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Prodotti" sold', + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'OrdineToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Cliente" who bought the "Prodotto"', + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'DomicilioToOrdine', + 'relationFromFields': ['domicilioUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': + 'The "Domicilio" linked to this "Prodotto" (and usually used in)', + }, + { + 'name': 'domicilioUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoOrdine', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoOrdine', + 'relationName': 'OrdineToStatoOrdine', + 'relationFromFields': ['statoOrdineId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoOrdineId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'lead', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadToOrdine', + 'relationFromFields': ['leadUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leadUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utente', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'OrdineToUtente', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'NegozioToOrdine', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + 'documentation': 'Model for "Prodotti" sold to "Clienti"', + }, + { + 'name': 'StatoOrdine', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ordini', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'OrdineToStatoOrdine', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoStato', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoStato', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ordine', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'ordinamento del progresso degli stati', + }, + { + 'name': 'colore', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Prodotto', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'modello', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Name of the product', + }, + { + 'name': 'prezzo', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Float', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Price of the product', + }, + { + 'name': 'vendibileDal', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Tells if the product is available for sale', + }, + { + 'name': 'vendibileAl', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Tells if the product is still available for sale', + }, + { + 'name': 'produttore', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Produttore', + 'relationName': 'ProdottoToProduttore', + 'relationFromFields': ['produttoreId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Produttore" of this "Prodotto"', + }, + { + 'name': 'produttoreId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'prodottiOrdinati', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'OrdineToProdotto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Prodotti Rivenduti" of this prodotto', + }, + { + 'name': 'fornitore', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Fornitore', + 'relationName': 'FornitoreToProdotto', + 'relationFromFields': ['fornitoreId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Fornitore" of this "Prodotto"', + }, + { + 'name': 'fornitoreId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoProdotto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoProdotto', + 'relationName': 'ProdottoToTipoProdotto', + 'relationFromFields': ['tipoProdottoId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoProdottoId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + 'documentation': 'Model of unique "Prodotti" sellable to the "Clienti"', + }, + { + 'name': 'TipoProdotto', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'prodotti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Prodotto', + 'relationName': 'ProdottoToTipoProdotto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Produttore', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Unique identifier', + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'Name of the "Produttore"', + }, + { + 'name': 'prodotti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Prodotto', + 'relationName': 'ProdottoToProduttore', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'The "Prodotti" produced by this "Produttore"', + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + 'documentation': 'Model of unique "Produttori"', + }, + { + 'name': 'Utente', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'firebaseUid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'email', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ruolo', + 'kind': 'enum', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'RuoloUtente', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'photoUrl', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nomeVisualizzato', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'NegozioToUtente', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'PraticaToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ingressi', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ingressi', + 'relationName': 'IngressiToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leadsGestiti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadsGestore', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leadsAssegnati', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadsAgente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'opportunitaGestite', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Opportunita', + 'relationName': 'GestoriLead', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'opportunitaAssegnate', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Opportunita', + 'relationName': 'Agenti', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ordini', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'OrdineToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'history', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'History', + 'relationName': 'HistoryToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Negozio', + 'dbName': null, + 'fields': [ + { + 'name': 'codice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'pratiche', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Pratica', + 'relationName': 'NegozioToPratica', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'NegozioToUtente', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'contratti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Contratto', + 'relationName': 'ContrattoToNegozio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'NegozioToSoggetto', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'zonaNegozio', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'ZonaNegozio', + 'relationName': 'NegozioToZonaNegozio', + 'relationFromFields': ['zonaNegozioId'], + 'relationToFields': ['id'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'zonaNegozioId', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ingressi', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ingressi', + 'relationName': 'IngressiToNegozio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leads', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadToNegozio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'Ordine', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'NegozioToOrdine', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Ingressi', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'data', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'clienti', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nonClienti', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utente', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'IngressiToUtente', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'IngressiToNegozio', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'ZonaNegozio', + 'dbName': null, + 'fields': [ + { + 'name': 'id', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozi', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'NegozioToZonaNegozio', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Lead', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'opportunita', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Opportunita', + 'relationName': 'LeadToOpportunita', + 'relationFromFields': ['opportunitaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'opportunitaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggetto', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Soggetto', + 'relationName': 'LeadToSoggetto', + 'relationFromFields': ['soggettoUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'soggettoUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Domicilio', + 'relationName': 'DomicilioToLead', + 'relationFromFields': ['domicilioUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'domicilioUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoOpportunita', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'StatoOpportunita', + 'relationName': 'LeadToStatoOpportunita', + 'relationFromFields': ['statoOpportunitaUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'statoOpportunitaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'LeadsGestore', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozio', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Negozio', + 'relationName': 'LeadToNegozio', + 'relationFromFields': ['negozioCodice'], + 'relationToFields': ['codice'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'negozioCodice', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'agente', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'LeadsAgente', + 'relationFromFields': ['agenteUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'agenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'appuntamenti', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'form', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInserimento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataScadenza', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataAppuntamento', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nota', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ordine', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Ordine', + 'relationName': 'LeadToOrdine', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'history', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'History', + 'relationName': 'HistoryToLead', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'Opportunita', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataInizio', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'dataFine', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leads', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadToOpportunita', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'form', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'gestoriLead', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'GestoriLead', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'agenti', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'Agenti', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'StatoOpportunita', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'nome', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'tipoStato', + 'kind': 'enum', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'TipoStato', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'ordine', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Int', + 'isGenerated': false, + 'isUpdatedAt': false, + 'documentation': 'ordinamento del progresso degli stati', + }, + { + 'name': 'colore', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'opportunitaUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leads', + 'kind': 'object', + 'isList': true, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'LeadToStatoOpportunita', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'History', + 'dbName': null, + 'fields': [ + { + 'name': 'uuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': true, + 'isReadOnly': false, + 'hasDefaultValue': true, + 'type': 'String', + 'default': { + 'name': 'uuid', + 'args': [], + }, + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'timestamp', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'DateTime', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'event', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'comment', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'HistoryComment', + 'relationName': 'HistoryToHistoryComment', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'attachment', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'HistoryAttachment', + 'relationName': 'HistoryToHistoryAttachment', + 'relationFromFields': [], + 'relationToFields': [], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'Utente', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Utente', + 'relationName': 'HistoryToUtente', + 'relationFromFields': ['utenteUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'utenteUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'Lead', + 'kind': 'object', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'Lead', + 'relationName': 'HistoryToLead', + 'relationFromFields': ['leadUuid'], + 'relationToFields': ['uuid'], + 'relationOnDelete': 'Cascade', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'leadUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': false, + 'isUnique': false, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'HistoryComment', + 'dbName': null, + 'fields': [ + { + 'name': 'comment', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'History', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'History', + 'relationName': 'HistoryToHistoryComment', + 'relationFromFields': ['historyUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'historyUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + { + 'name': 'HistoryAttachment', + 'dbName': null, + 'fields': [ + { + 'name': 'url', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'name', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'History', + 'kind': 'object', + 'isList': false, + 'isRequired': true, + 'isUnique': false, + 'isId': false, + 'isReadOnly': false, + 'hasDefaultValue': false, + 'type': 'History', + 'relationName': 'HistoryToHistoryAttachment', + 'relationFromFields': ['historyUuid'], + 'relationToFields': ['uuid'], + 'isGenerated': false, + 'isUpdatedAt': false, + }, + { + 'name': 'historyUuid', + 'kind': 'scalar', + 'isList': false, + 'isRequired': true, + 'isUnique': true, + 'isId': false, + 'isReadOnly': true, + 'hasDefaultValue': false, + 'type': 'String', + 'isGenerated': false, + 'isUpdatedAt': false, + }, + ], + 'primaryKey': null, + 'uniqueFields': [], + 'uniqueIndexes': [], + 'isGenerated': false, + }, + ], + 'types': [], + }); + + final _i1.MetricsClient $metrics; + + final _i1.TransactionClient $transaction; + + final _i1.Engine _engine; + + Future $connect() => _engine.start(); + + Future $disconnect() => _engine.stop(); + + SoggettoDelegate get soggetto => SoggettoDelegate._(this); + + PrivacyDelegate get privacy => PrivacyDelegate._(this); + + SoggettoBusinessInfoDelegate get soggettoBusinessInfo => + SoggettoBusinessInfoDelegate._(this); + + LegaleRappresentanteDelegate get legaleRappresentante => + LegaleRappresentanteDelegate._(this); + + ReferenteDelegate get referente => ReferenteDelegate._(this); + + IndirizzoEmailDelegate get indirizzoEmail => IndirizzoEmailDelegate._(this); + + NumeroTelefonoDelegate get numeroTelefono => NumeroTelefonoDelegate._(this); + + DomicilioDelegate get domicilio => DomicilioDelegate._(this); + + ServizioEwoDelegate get servizioEwo => ServizioEwoDelegate._(this); + + FornituraDelegate get fornitura => FornituraDelegate._(this); + + FornituraLuceDelegate get fornituraLuce => FornituraLuceDelegate._(this); + + ConsumoAnnuoLuceDelegate get consumoAnnuoLuce => + ConsumoAnnuoLuceDelegate._(this); + + FornituraGasDelegate get fornituraGas => FornituraGasDelegate._(this); + + ConsumoAnnuoGasDelegate get consumoAnnuoGas => + ConsumoAnnuoGasDelegate._(this); + + ContrattoDelegate get contratto => ContrattoDelegate._(this); + + ModuloContrattoDelegate get moduloContratto => + ModuloContrattoDelegate._(this); + + TipoModuloContrattoDelegate get tipoModuloContratto => + TipoModuloContrattoDelegate._(this); + + StatoContrattoDelegate get statoContratto => StatoContrattoDelegate._(this); + + OffertaDelegate get offerta => OffertaDelegate._(this); + + PraticaDelegate get pratica => PraticaDelegate._(this); + + TipoPraticaDelegate get tipoPratica => TipoPraticaDelegate._(this); + + StatoPraticaDelegate get statoPratica => StatoPraticaDelegate._(this); + + ContrattoEnelLuceDelegate get contrattoEnelLuce => + ContrattoEnelLuceDelegate._(this); + + ContrattoEnelGasDelegate get contrattoEnelGas => + ContrattoEnelGasDelegate._(this); + + ContrattoEnelXAssicurazioneDelegate get contrattoEnelXAssicurazione => + ContrattoEnelXAssicurazioneDelegate._(this); + + ContrattoEnelFibraDelegate get contrattoEnelFibra => + ContrattoEnelFibraDelegate._(this); + + ClasseMisuratoreGasDelegate get classeMisuratoreGas => + ClasseMisuratoreGasDelegate._(this); + + FornitoreDelegate get fornitore => FornitoreDelegate._(this); + + OrdineDelegate get ordine => OrdineDelegate._(this); + + StatoOrdineDelegate get statoOrdine => StatoOrdineDelegate._(this); + + ProdottoDelegate get prodotto => ProdottoDelegate._(this); + + TipoProdottoDelegate get tipoProdotto => TipoProdottoDelegate._(this); + + ProduttoreDelegate get produttore => ProduttoreDelegate._(this); + + UtenteDelegate get utente => UtenteDelegate._(this); + + NegozioDelegate get negozio => NegozioDelegate._(this); + + IngressiDelegate get ingressi => IngressiDelegate._(this); + + ZonaNegozioDelegate get zonaNegozio => ZonaNegozioDelegate._(this); + + LeadDelegate get lead => LeadDelegate._(this); + + OpportunitaDelegate get opportunita => OpportunitaDelegate._(this); + + StatoOpportunitaDelegate get statoOpportunita => + StatoOpportunitaDelegate._(this); + + HistoryDelegate get history => HistoryDelegate._(this); + + HistoryCommentDelegate get historyComment => HistoryCommentDelegate._(this); + + HistoryAttachmentDelegate get historyAttachment => + HistoryAttachmentDelegate._(this); + + _i1.RawClient get $raw => _i1.RawClient( + _engine, + datamodel, + $transaction, + ); +} diff --git a/i340/prisma/generated_dart_client/model.dart b/i340/prisma/generated_dart_client/model.dart new file mode 100644 index 00000000..6eda3d4f --- /dev/null +++ b/i340/prisma/generated_dart_client/model.dart @@ -0,0 +1,2459 @@ +library prisma.namespace.model; // ignore_for_file: no_leading_underscores_for_library_prefixes + +import 'package:orm/orm.dart' as _i1; + +import 'model.dart' as _i2; +import 'prisma.dart' as _i3; + +enum TipoSoggetto implements _i1.PrismaEnum { + consumer._('CONSUMER'), + business._('BUSINESS'); + + const TipoSoggetto._(this.name); + + @override + final String name; +} + +class IndirizzoEmail { + const IndirizzoEmail({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + factory IndirizzoEmail.fromJson(Map json) => IndirizzoEmail( + uuid: json['uuid'], + indirizzo: json['indirizzo'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentanteUuid: json['legaleRappresentanteUuid'], + referenteUuid: json['referenteUuid'], + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + referente: json['referente'] is Map + ? _i2.Referente.fromJson(json['referente']) + : null, + legaleRappresentante: json['legaleRappresentante'] is Map + ? _i2.LegaleRappresentante.fromJson(json['legaleRappresentante']) + : null, + ); + + final String? uuid; + + final String? indirizzo; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentanteUuid; + + final String? referenteUuid; + + final _i2.Soggetto? soggetto; + + final _i2.Referente? referente; + + final _i2.LegaleRappresentante? legaleRappresentante; +} + +class Referente { + const Referente({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + factory Referente.fromJson(Map json) => Referente( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + numeroTelefono: json['numeroTelefono'] is Map + ? _i2.NumeroTelefono.fromJson(json['numeroTelefono']) + : null, + indirizzoEmail: json['indirizzoEmail'] is Map + ? _i2.IndirizzoEmail.fromJson(json['indirizzoEmail']) + : null, + soggettoBusinessInfo: json['soggettoBusinessInfo'] is Map + ? _i2.SoggettoBusinessInfo.fromJson(json['soggettoBusinessInfo']) + : null, + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; + + final _i2.NumeroTelefono? numeroTelefono; + + final _i2.IndirizzoEmail? indirizzoEmail; + + final _i2.SoggettoBusinessInfo? soggettoBusinessInfo; +} + +class NumeroTelefono { + const NumeroTelefono({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + factory NumeroTelefono.fromJson(Map json) => NumeroTelefono( + uuid: json['uuid'], + numero: json['numero'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentateUuid: json['legaleRappresentateUuid'], + referenteUuid: json['referenteUuid'], + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + legaleRappresentate: json['legaleRappresentate'] is Map + ? _i2.LegaleRappresentante.fromJson(json['legaleRappresentate']) + : null, + referente: json['referente'] is Map + ? _i2.Referente.fromJson(json['referente']) + : null, + ); + + final String? uuid; + + final String? numero; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentateUuid; + + final String? referenteUuid; + + final _i2.Soggetto? soggetto; + + final _i2.LegaleRappresentante? legaleRappresentate; + + final _i2.Referente? referente; +} + +class LegaleRappresentante { + const LegaleRappresentante({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + factory LegaleRappresentante.fromJson(Map json) => LegaleRappresentante( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + numeroTelefono: json['numeroTelefono'] is Map + ? _i2.NumeroTelefono.fromJson(json['numeroTelefono']) + : null, + indirizzoEmail: json['indirizzoEmail'] is Map + ? _i2.IndirizzoEmail.fromJson(json['indirizzoEmail']) + : null, + soggettoBusinessInfo: json['soggettoBusinessInfo'] is Map + ? _i2.SoggettoBusinessInfo.fromJson(json['soggettoBusinessInfo']) + : null, + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; + + final _i2.NumeroTelefono? numeroTelefono; + + final _i2.IndirizzoEmail? indirizzoEmail; + + final _i2.SoggettoBusinessInfo? soggettoBusinessInfo; +} + +class SoggettoBusinessInfo { + const SoggettoBusinessInfo({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + factory SoggettoBusinessInfo.fromJson(Map json) => SoggettoBusinessInfo( + uuid: json['uuid'], + rea: json['rea'], + partitaIVA: json['partitaIVA'], + sdi: json['sdi'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentante: json['legaleRappresentante'] is Map + ? _i2.LegaleRappresentante.fromJson(json['legaleRappresentante']) + : null, + referente: json['referente'] is Map + ? _i2.Referente.fromJson(json['referente']) + : null, + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + ); + + final String? uuid; + + final String? rea; + + final String? partitaIVA; + + final String? sdi; + + final String? soggettoUuid; + + final _i2.LegaleRappresentante? legaleRappresentante; + + final _i2.Referente? referente; + + final _i2.Soggetto? soggetto; +} + +class ConsumoAnnuoLuce { + const ConsumoAnnuoLuce({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.fornituraLuce, + }); + + factory ConsumoAnnuoLuce.fromJson(Map json) => ConsumoAnnuoLuce( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraLuceUuid: json['fornituraLuceUuid'], + fornituraLuce: json['fornituraLuce'] is Map + ? _i2.FornituraLuce.fromJson(json['fornituraLuce']) + : null, + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraLuceUuid; + + final _i2.FornituraLuce? fornituraLuce; +} + +enum TipoServizioEwo implements _i1.PrismaEnum { + fornitura._('FORNITURA'), + domicilio._('DOMICILIO'); + + const TipoServizioEwo._(this.name); + + @override + final String name; +} + +enum Canale implements _i1.PrismaEnum { + sep._('SEP'), + neve._('NEVE'), + corporate._('CORPORATE'); + + const Canale._(this.name); + + @override + final String name; +} + +class TipoModuloContratto { + const TipoModuloContratto({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + this.$count, + }); + + factory TipoModuloContratto.fromJson(Map json) => TipoModuloContratto( + id: json['id'], + nome: json['nome'], + numeroOfferteCollegabili: json['numeroOfferteCollegabili'], + moduloContratto: (json['ModuloContratto'] as Iterable?) + ?.map((json) => _i2.ModuloContratto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.TipoModuloContrattoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final int? numeroOfferteCollegabili; + + final Iterable<_i2.ModuloContratto>? moduloContratto; + + final _i3.TipoModuloContrattoCountOutputType? $count; +} + +class ModuloContratto { + const ModuloContratto({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + this.$count, + }); + + factory ModuloContratto.fromJson(Map json) => ModuloContratto( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + clienteTarget: json['clienteTarget'] != null + ? _i2.TipoSoggetto.values + .firstWhere((e) => e.name == json['clienteTarget']) + : null, + canale: json['canale'] != null + ? _i2.Canale.values.firstWhere((e) => e.name == json['canale']) + : null, + tipoModuloContrattoId: json['tipoModuloContrattoId'], + serviziEwoCollegabili: (json['serviziEwoCollegabili'] as Iterable?) + ?.map((json) => _i2.ServizioEwo.fromJson(json)), + contratti: (json['contratti'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + fornitore: json['fornitore'] is Map + ? _i2.Fornitore.fromJson(json['fornitore']) + : null, + tipoModulo: json['tipoModulo'] is Map + ? _i2.TipoModuloContratto.fromJson(json['tipoModulo']) + : null, + $count: json['_count'] is Map + ? _i3.ModuloContrattoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i2.TipoSoggetto? clienteTarget; + + final _i2.Canale? canale; + + final String? tipoModuloContrattoId; + + final Iterable<_i2.ServizioEwo>? serviziEwoCollegabili; + + final Iterable<_i2.Contratto>? contratti; + + final _i2.Fornitore? fornitore; + + final _i2.TipoModuloContratto? tipoModulo; + + final _i3.ModuloContrattoCountOutputType? $count; +} + +class Produttore { + const Produttore({ + this.id, + this.nome, + this.prodotti, + this.$count, + }); + + factory Produttore.fromJson(Map json) => Produttore( + id: json['id'], + nome: json['nome'], + prodotti: (json['prodotti'] as Iterable?) + ?.map((json) => _i2.Prodotto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.ProduttoreCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.Prodotto>? prodotti; + + final _i3.ProduttoreCountOutputType? $count; +} + +enum TipoStato implements _i1.PrismaEnum { + daFare._('DA_FARE'), + inCorso._('IN_CORSO'), + completato._('COMPLETATO'), + cancellato._('CANCELLATO'); + + const TipoStato._(this.name); + + @override + final String name; +} + +class StatoOrdine { + const StatoOrdine({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + this.$count, + }); + + factory StatoOrdine.fromJson(Map json) => StatoOrdine( + id: json['id'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i2.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + ordini: (json['ordini'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + $count: json['_count'] is Map + ? _i3.StatoOrdineCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final Iterable<_i2.Ordine>? ordini; + + final _i3.StatoOrdineCountOutputType? $count; +} + +enum RuoloUtente implements _i1.PrismaEnum { + consulente._('CONSULENTE'), + agente._('AGENTE'), + operatore._('OPERATORE'), + responsabile._('RESPONSABILE'), + amministratore._('AMMINISTRATORE'), + developer._('DEVELOPER'); + + const RuoloUtente._(this.name); + + @override + final String name; +} + +class TipoPratica { + const TipoPratica({ + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + this.$count, + }); + + factory TipoPratica.fromJson(Map json) => TipoPratica( + id: json['id'], + nome: json['nome'], + serviziEwo: (json['serviziEwo'] as Iterable?) + ?.map((json) => _i2.ServizioEwo.fromJson(json)), + pratiche: (json['pratiche'] as Iterable?) + ?.map((json) => _i2.Pratica.fromJson(json)), + $count: json['_count'] is Map + ? _i3.TipoPraticaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.ServizioEwo>? serviziEwo; + + final Iterable<_i2.Pratica>? pratiche; + + final _i3.TipoPraticaCountOutputType? $count; +} + +class StatoPratica { + const StatoPratica({ + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + this.$count, + }); + + factory StatoPratica.fromJson(Map json) => StatoPratica( + id: json['id'], + nome: json['nome'], + pratiche: (json['pratiche'] as Iterable?) + ?.map((json) => _i2.Pratica.fromJson(json)), + serviziEwo: (json['serviziEwo'] as Iterable?) + ?.map((json) => _i2.ServizioEwo.fromJson(json)), + $count: json['_count'] is Map + ? _i3.StatoPraticaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.Pratica>? pratiche; + + final Iterable<_i2.ServizioEwo>? serviziEwo; + + final _i3.StatoPraticaCountOutputType? $count; +} + +class Pratica { + const Pratica({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + this.$count, + }); + + factory Pratica.fromJson(Map json) => Pratica( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + tipoPraticaId: json['tipoPraticaId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + statoPraticaId: json['statoPraticaId'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + tipoPratica: json['tipoPratica'] is Map + ? _i2.TipoPratica.fromJson(json['tipoPratica']) + : null, + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + utente: + json['utente'] is Map ? _i2.Utente.fromJson(json['utente']) : null, + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + stato: json['stato'] is Map + ? _i2.StatoPratica.fromJson(json['stato']) + : null, + contratto: (json['contratto'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.PraticaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final String? tipoPraticaId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? statoPraticaId; + + final DateTime? ultimoAggiornamentoStato; + + final _i2.TipoPratica? tipoPratica; + + final _i2.Soggetto? soggetto; + + final _i2.Utente? utente; + + final _i2.Negozio? negozio; + + final _i2.StatoPratica? stato; + + final Iterable<_i2.Contratto>? contratto; + + final _i3.PraticaCountOutputType? $count; +} + +class ZonaNegozio { + const ZonaNegozio({ + this.id, + this.nome, + this.negozi, + this.$count, + }); + + factory ZonaNegozio.fromJson(Map json) => ZonaNegozio( + id: json['id'], + nome: json['nome'], + negozi: (json['negozi'] as Iterable?) + ?.map((json) => _i2.Negozio.fromJson(json)), + $count: json['_count'] is Map + ? _i3.ZonaNegozioCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.Negozio>? negozi; + + final _i3.ZonaNegozioCountOutputType? $count; +} + +class Ingressi { + const Ingressi({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.utente, + this.negozio, + }); + + factory Ingressi.fromJson(Map json) => Ingressi( + uuid: json['uuid'], + data: json['data'], + clienti: json['clienti'], + nonClienti: json['nonClienti'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + utente: + json['utente'] is Map ? _i2.Utente.fromJson(json['utente']) : null, + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + ); + + final String? uuid; + + final DateTime? data; + + final int? clienti; + + final int? nonClienti; + + final String? utenteUuid; + + final String? negozioCodice; + + final _i2.Utente? utente; + + final _i2.Negozio? negozio; +} + +class Negozio { + const Negozio({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + this.$count, + }); + + factory Negozio.fromJson(Map json) => Negozio( + codice: json['codice'], + nome: json['nome'], + zonaNegozioId: json['zonaNegozioId'], + pratiche: (json['pratiche'] as Iterable?) + ?.map((json) => _i2.Pratica.fromJson(json)), + utenti: (json['utenti'] as Iterable?) + ?.map((json) => _i2.Utente.fromJson(json)), + contratti: (json['contratti'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + soggetti: (json['soggetti'] as Iterable?) + ?.map((json) => _i2.Soggetto.fromJson(json)), + zonaNegozio: json['zonaNegozio'] is Map + ? _i2.ZonaNegozio.fromJson(json['zonaNegozio']) + : null, + ingressi: (json['ingressi'] as Iterable?) + ?.map((json) => _i2.Ingressi.fromJson(json)), + leads: (json['leads'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + ordine: (json['Ordine'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + $count: json['_count'] is Map + ? _i3.NegozioCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? codice; + + final String? nome; + + final String? zonaNegozioId; + + final Iterable<_i2.Pratica>? pratiche; + + final Iterable<_i2.Utente>? utenti; + + final Iterable<_i2.Contratto>? contratti; + + final Iterable<_i2.Soggetto>? soggetti; + + final _i2.ZonaNegozio? zonaNegozio; + + final Iterable<_i2.Ingressi>? ingressi; + + final Iterable<_i2.Lead>? leads; + + final Iterable<_i2.Ordine>? ordine; + + final _i3.NegozioCountOutputType? $count; +} + +class HistoryComment { + const HistoryComment({ + this.comment, + this.historyUuid, + this.history, + }); + + factory HistoryComment.fromJson(Map json) => HistoryComment( + comment: json['comment'], + historyUuid: json['historyUuid'], + history: json['History'] is Map + ? _i2.History.fromJson(json['History']) + : null, + ); + + final String? comment; + + final String? historyUuid; + + final _i2.History? history; +} + +class HistoryAttachment { + const HistoryAttachment({ + this.url, + this.name, + this.historyUuid, + this.history, + }); + + factory HistoryAttachment.fromJson(Map json) => HistoryAttachment( + url: json['url'], + name: json['name'], + historyUuid: json['historyUuid'], + history: json['History'] is Map + ? _i2.History.fromJson(json['History']) + : null, + ); + + final String? url; + + final String? name; + + final String? historyUuid; + + final _i2.History? history; +} + +class History { + const History({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + factory History.fromJson(Map json) => History( + uuid: json['uuid'], + timestamp: json['timestamp'], + event: json['event'], + utenteUuid: json['utenteUuid'], + leadUuid: json['leadUuid'], + comment: json['comment'] is Map + ? _i2.HistoryComment.fromJson(json['comment']) + : null, + attachment: json['attachment'] is Map + ? _i2.HistoryAttachment.fromJson(json['attachment']) + : null, + utente: + json['Utente'] is Map ? _i2.Utente.fromJson(json['Utente']) : null, + lead: json['Lead'] is Map ? _i2.Lead.fromJson(json['Lead']) : null, + ); + + final String? uuid; + + final DateTime? timestamp; + + final String? event; + + final String? utenteUuid; + + final String? leadUuid; + + final _i2.HistoryComment? comment; + + final _i2.HistoryAttachment? attachment; + + final _i2.Utente? utente; + + final _i2.Lead? lead; +} + +class Utente { + const Utente({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + this.$count, + }); + + factory Utente.fromJson(Map json) => Utente( + uuid: json['uuid'], + firebaseUid: json['firebaseUid'], + email: json['email'], + ruolo: json['ruolo'] != null + ? _i2.RuoloUtente.values.firstWhere((e) => e.name == json['ruolo']) + : null, + photoUrl: json['photoUrl'], + negozioCodice: json['negozioCodice'], + nomeVisualizzato: json['nomeVisualizzato'], + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + contratti: (json['contratti'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + pratiche: (json['pratiche'] as Iterable?) + ?.map((json) => _i2.Pratica.fromJson(json)), + ingressi: (json['ingressi'] as Iterable?) + ?.map((json) => _i2.Ingressi.fromJson(json)), + leadsGestiti: (json['leadsGestiti'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + leadsAssegnati: (json['leadsAssegnati'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + opportunitaGestite: (json['opportunitaGestite'] as Iterable?) + ?.map((json) => _i2.Opportunita.fromJson(json)), + opportunitaAssegnate: (json['opportunitaAssegnate'] as Iterable?) + ?.map((json) => _i2.Opportunita.fromJson(json)), + ordini: (json['ordini'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + history: (json['history'] as Iterable?) + ?.map((json) => _i2.History.fromJson(json)), + $count: json['_count'] is Map + ? _i3.UtenteCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? firebaseUid; + + final String? email; + + final _i2.RuoloUtente? ruolo; + + final String? photoUrl; + + final String? negozioCodice; + + final String? nomeVisualizzato; + + final _i2.Negozio? negozio; + + final Iterable<_i2.Contratto>? contratti; + + final Iterable<_i2.Pratica>? pratiche; + + final Iterable<_i2.Ingressi>? ingressi; + + final Iterable<_i2.Lead>? leadsGestiti; + + final Iterable<_i2.Lead>? leadsAssegnati; + + final Iterable<_i2.Opportunita>? opportunitaGestite; + + final Iterable<_i2.Opportunita>? opportunitaAssegnate; + + final Iterable<_i2.Ordine>? ordini; + + final Iterable<_i2.History>? history; + + final _i3.UtenteCountOutputType? $count; +} + +class Opportunita { + const Opportunita({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + this.$count, + }); + + factory Opportunita.fromJson(Map json) => Opportunita( + uuid: json['uuid'], + nome: json['nome'], + dataInizio: json['dataInizio'], + dataFine: json['dataFine'], + form: json['form'], + leads: (json['leads'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + gestoriLead: (json['gestoriLead'] as Iterable?) + ?.map((json) => _i2.Utente.fromJson(json)), + agenti: (json['agenti'] as Iterable?) + ?.map((json) => _i2.Utente.fromJson(json)), + $count: json['_count'] is Map + ? _i3.OpportunitaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataInizio; + + final DateTime? dataFine; + + final String? form; + + final Iterable<_i2.Lead>? leads; + + final Iterable<_i2.Utente>? gestoriLead; + + final Iterable<_i2.Utente>? agenti; + + final _i3.OpportunitaCountOutputType? $count; +} + +class StatoOpportunita { + const StatoOpportunita({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + this.$count, + }); + + factory StatoOpportunita.fromJson(Map json) => StatoOpportunita( + uuid: json['uuid'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i2.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + opportunitaUuid: json['opportunitaUuid'], + leads: (json['leads'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + $count: json['_count'] is Map + ? _i3.StatoOpportunitaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? nome; + + final _i2.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final String? opportunitaUuid; + + final Iterable<_i2.Lead>? leads; + + final _i3.StatoOpportunitaCountOutputType? $count; +} + +class Lead { + const Lead({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + this.$count, + }); + + factory Lead.fromJson(Map json) => Lead( + uuid: json['uuid'], + opportunitaUuid: json['opportunitaUuid'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOpportunitaUuid: json['statoOpportunitaUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + agenteUuid: json['agenteUuid'], + appuntamenti: json['appuntamenti'], + form: json['form'], + dataInserimento: json['dataInserimento'], + dataScadenza: json['dataScadenza'], + dataAppuntamento: json['dataAppuntamento'], + nota: json['nota'], + opportunita: json['opportunita'] is Map + ? _i2.Opportunita.fromJson(json['opportunita']) + : null, + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + domicilio: json['domicilio'] is Map + ? _i2.Domicilio.fromJson(json['domicilio']) + : null, + statoOpportunita: json['statoOpportunita'] is Map + ? _i2.StatoOpportunita.fromJson(json['statoOpportunita']) + : null, + utente: + json['utente'] is Map ? _i2.Utente.fromJson(json['utente']) : null, + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + agente: + json['agente'] is Map ? _i2.Utente.fromJson(json['agente']) : null, + ordine: (json['ordine'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + history: (json['history'] as Iterable?) + ?.map((json) => _i2.History.fromJson(json)), + $count: json['_count'] is Map + ? _i3.LeadCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? opportunitaUuid; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOpportunitaUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? agenteUuid; + + final String? appuntamenti; + + final String? form; + + final DateTime? dataInserimento; + + final DateTime? dataScadenza; + + final DateTime? dataAppuntamento; + + final String? nota; + + final _i2.Opportunita? opportunita; + + final _i2.Soggetto? soggetto; + + final _i2.Domicilio? domicilio; + + final _i2.StatoOpportunita? statoOpportunita; + + final _i2.Utente? utente; + + final _i2.Negozio? negozio; + + final _i2.Utente? agente; + + final Iterable<_i2.Ordine>? ordine; + + final Iterable<_i2.History>? history; + + final _i3.LeadCountOutputType? $count; +} + +class Ordine { + const Ordine({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + this.$count, + }); + + factory Ordine.fromJson(Map json) => Ordine( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + valore: json['valore'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOrdineId: json['statoOrdineId'], + leadUuid: json['leadUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + prodotti: (json['prodotti'] as Iterable?) + ?.map((json) => _i2.Prodotto.fromJson(json)), + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + domicilio: json['domicilio'] is Map + ? _i2.Domicilio.fromJson(json['domicilio']) + : null, + statoOrdine: json['statoOrdine'] is Map + ? _i2.StatoOrdine.fromJson(json['statoOrdine']) + : null, + lead: json['lead'] is Map ? _i2.Lead.fromJson(json['lead']) : null, + utente: + json['utente'] is Map ? _i2.Utente.fromJson(json['utente']) : null, + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + $count: json['_count'] is Map + ? _i3.OrdineCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final double? valore; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOrdineId; + + final String? leadUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final Iterable<_i2.Prodotto>? prodotti; + + final _i2.Soggetto? soggetto; + + final _i2.Domicilio? domicilio; + + final _i2.StatoOrdine? statoOrdine; + + final _i2.Lead? lead; + + final _i2.Utente? utente; + + final _i2.Negozio? negozio; + + final _i3.OrdineCountOutputType? $count; +} + +class TipoProdotto { + const TipoProdotto({ + this.id, + this.nome, + this.prodotti, + this.$count, + }); + + factory TipoProdotto.fromJson(Map json) => TipoProdotto( + id: json['id'], + nome: json['nome'], + prodotti: (json['prodotti'] as Iterable?) + ?.map((json) => _i2.Prodotto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.TipoProdottoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.Prodotto>? prodotti; + + final _i3.TipoProdottoCountOutputType? $count; +} + +class Prodotto { + const Prodotto({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + this.$count, + }); + + factory Prodotto.fromJson(Map json) => Prodotto( + uuid: json['uuid'], + modello: json['modello'], + prezzo: json['prezzo'], + vendibileDal: json['vendibileDal'], + vendibileAl: json['vendibileAl'], + produttoreId: json['produttoreId'], + fornitoreId: json['fornitoreId'], + tipoProdottoId: json['tipoProdottoId'], + produttore: json['produttore'] is Map + ? _i2.Produttore.fromJson(json['produttore']) + : null, + prodottiOrdinati: (json['prodottiOrdinati'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + fornitore: json['fornitore'] is Map + ? _i2.Fornitore.fromJson(json['fornitore']) + : null, + tipoProdotto: json['tipoProdotto'] is Map + ? _i2.TipoProdotto.fromJson(json['tipoProdotto']) + : null, + $count: json['_count'] is Map + ? _i3.ProdottoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? modello; + + final double? prezzo; + + final DateTime? vendibileDal; + + final DateTime? vendibileAl; + + final String? produttoreId; + + final String? fornitoreId; + + final String? tipoProdottoId; + + final _i2.Produttore? produttore; + + final Iterable<_i2.Ordine>? prodottiOrdinati; + + final _i2.Fornitore? fornitore; + + final _i2.TipoProdotto? tipoProdotto; + + final _i3.ProdottoCountOutputType? $count; +} + +class Fornitore { + const Fornitore({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + this.$count, + }); + + factory Fornitore.fromJson(Map json) => Fornitore( + id: json['id'], + nome: json['nome'], + serviziEwo: (json['serviziEwo'] as Iterable?) + ?.map((json) => _i2.ServizioEwo.fromJson(json)), + moduliContratto: (json['moduliContratto'] as Iterable?) + ?.map((json) => _i2.ModuloContratto.fromJson(json)), + prodotti: (json['prodotti'] as Iterable?) + ?.map((json) => _i2.Prodotto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.FornitoreCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.ServizioEwo>? serviziEwo; + + final Iterable<_i2.ModuloContratto>? moduliContratto; + + final Iterable<_i2.Prodotto>? prodotti; + + final _i3.FornitoreCountOutputType? $count; +} + +class ClasseMisuratoreGas { + const ClasseMisuratoreGas({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + this.$count, + }); + + factory ClasseMisuratoreGas.fromJson(Map json) => ClasseMisuratoreGas( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + id: json['id'], + classe: json['classe'], + fornituraGas: (json['fornituraGas'] as Iterable?) + ?.map((json) => _i2.FornituraGas.fromJson(json)), + $count: json['_count'] is Map + ? _i3.ClasseMisuratoreGasCountOutputType.fromJson(json['_count']) + : null, + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; + + final String? id; + + final String? classe; + + final Iterable<_i2.FornituraGas>? fornituraGas; + + final _i3.ClasseMisuratoreGasCountOutputType? $count; +} + +class ConsumoAnnuoGas { + const ConsumoAnnuoGas({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.fornituraGas, + }); + + factory ConsumoAnnuoGas.fromJson(Map json) => ConsumoAnnuoGas( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraGasUuid: json['fornituraGasUuid'], + fornituraGas: json['fornituraGas'] is Map + ? _i2.FornituraGas.fromJson(json['fornituraGas']) + : null, + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraGasUuid; + + final _i2.FornituraGas? fornituraGas; +} + +class FornituraGas { + const FornituraGas({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + this.$count, + }); + + factory FornituraGas.fromJson(Map json) => FornituraGas( + uuid: json['uuid'], + pdr: json['pdr'], + fornituraUuid: json['fornituraUuid'], + classeMisuratoreGasId: json['classeMisuratoreGasId'], + matricolaContatore: json['matricolaContatore'], + remi: json['remi'], + classeMisuratore: json['classeMisuratore'] is Map + ? _i2.ClasseMisuratoreGas.fromJson(json['classeMisuratore']) + : null, + consumoAnnuoGas: json['consumoAnnuoGas'] is Map + ? _i2.ConsumoAnnuoGas.fromJson(json['consumoAnnuoGas']) + : null, + contrattiEnelGas: (json['contrattiEnelGas'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelGas.fromJson(json)), + fornitura: json['fornitura'] is Map + ? _i2.Fornitura.fromJson(json['fornitura']) + : null, + $count: json['_count'] is Map + ? _i3.FornituraGasCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? pdr; + + final String? fornituraUuid; + + final String? classeMisuratoreGasId; + + final String? matricolaContatore; + + final String? remi; + + final _i2.ClasseMisuratoreGas? classeMisuratore; + + final _i2.ConsumoAnnuoGas? consumoAnnuoGas; + + final Iterable<_i2.ContrattoEnelGas>? contrattiEnelGas; + + final _i2.Fornitura? fornitura; + + final _i3.FornituraGasCountOutputType? $count; +} + +class ContrattoEnelGas { + const ContrattoEnelGas({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + factory ContrattoEnelGas.fromJson(Map json) => ContrattoEnelGas( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraGasUuid: json['fornituraGasUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + stato: json['stato'] is Map + ? _i2.StatoContratto.fromJson(json['stato']) + : null, + fornituraGas: json['fornituraGas'] is Map + ? _i2.FornituraGas.fromJson(json['fornituraGas']) + : null, + contratto: json['contratto'] is Map + ? _i2.Contratto.fromJson(json['contratto']) + : null, + offerta: json['offerta'] is Map + ? _i2.Offerta.fromJson(json['offerta']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraGasUuid; + + final String? contrattoUuid; + + final String? offertaUuid; + + final _i2.StatoContratto? stato; + + final _i2.FornituraGas? fornituraGas; + + final _i2.Contratto? contratto; + + final _i2.Offerta? offerta; +} + +enum ServizioContrattoEnelFibra implements _i1.PrismaEnum { + dati._('DATI'), + datiVoce._('DATI_VOCE'); + + const ServizioContrattoEnelFibra._(this.name); + + @override + final String name; +} + +enum TipoContrattoEnelFibra implements _i1.PrismaEnum { + nuovaAttivazione._('NUOVA_ATTIVAZIONE'), + migrazione._('MIGRAZIONE'); + + const TipoContrattoEnelFibra._(this.name); + + @override + final String name; +} + +enum TecnologiaContrattoEnelFibra implements _i1.PrismaEnum { + ftth._('FTTH'), + fttc._('FTTC'); + + const TecnologiaContrattoEnelFibra._(this.name); + + @override + final String name; +} + +class ContrattoEnelFibra { + const ContrattoEnelFibra({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + factory ContrattoEnelFibra.fromJson(Map json) => ContrattoEnelFibra( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + servizioContrattoEnelFibra: json['servizioContrattoEnelFibra'] != null + ? _i2.ServizioContrattoEnelFibra.values + .firstWhere((e) => e.name == json['servizioContrattoEnelFibra']) + : null, + tipoContrattoEnelFibra: json['tipoContrattoEnelFibra'] != null + ? _i2.TipoContrattoEnelFibra.values + .firstWhere((e) => e.name == json['tipoContrattoEnelFibra']) + : null, + tecnologiaContrattoEnelFibra: + json['tecnologiaContrattoEnelFibra'] != null + ? _i2.TecnologiaContrattoEnelFibra.values.firstWhere( + (e) => e.name == json['tecnologiaContrattoEnelFibra']) + : null, + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + stato: json['stato'] is Map + ? _i2.StatoContratto.fromJson(json['stato']) + : null, + contratto: json['contratto'] is Map + ? _i2.Contratto.fromJson(json['contratto']) + : null, + offerta: json['offerta'] is Map + ? _i2.Offerta.fromJson(json['offerta']) + : null, + domicilio: json['domicilio'] is Map + ? _i2.Domicilio.fromJson(json['domicilio']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final _i2.ServizioContrattoEnelFibra? servizioContrattoEnelFibra; + + final _i2.TipoContrattoEnelFibra? tipoContrattoEnelFibra; + + final _i2.TecnologiaContrattoEnelFibra? tecnologiaContrattoEnelFibra; + + final String? domicilioUuid; + + final String? offertaUuid; + + final _i2.StatoContratto? stato; + + final _i2.Contratto? contratto; + + final _i2.Offerta? offerta; + + final _i2.Domicilio? domicilio; +} + +class Offerta { + const Offerta({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + this.$count, + }); + + factory Offerta.fromJson(Map json) => Offerta( + uuid: json['uuid'], + nome: json['nome'], + dataFineOfferta: json['dataFineOfferta'], + dataInizioOfferta: json['dataInizioOfferta'], + servizioEwoId: json['servizioEwoId'], + servizioEwo: json['servizioEwo'] is Map + ? _i2.ServizioEwo.fromJson(json['servizioEwo']) + : null, + contrattiEnelLuce: (json['contrattiEnelLuce'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelLuce.fromJson(json)), + contrattiEnelGas: (json['contrattiEnelGas'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelGas.fromJson(json)), + contrattiEnelFibra: (json['contrattiEnelFibra'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelFibra.fromJson(json)), + contrattiEnelXAssicurazione: + (json['contrattiEnelXAssicurazione'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelXAssicurazione.fromJson(json)), + offerteIncluse: (json['offerteIncluse'] as Iterable?) + ?.map((json) => _i2.Offerta.fromJson(json)), + inclusaInOfferte: (json['inclusaInOfferte'] as Iterable?) + ?.map((json) => _i2.Offerta.fromJson(json)), + $count: json['_count'] is Map + ? _i3.OffertaCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataFineOfferta; + + final DateTime? dataInizioOfferta; + + final String? servizioEwoId; + + final _i2.ServizioEwo? servizioEwo; + + final Iterable<_i2.ContrattoEnelLuce>? contrattiEnelLuce; + + final Iterable<_i2.ContrattoEnelGas>? contrattiEnelGas; + + final Iterable<_i2.ContrattoEnelFibra>? contrattiEnelFibra; + + final Iterable<_i2.ContrattoEnelXAssicurazione>? contrattiEnelXAssicurazione; + + final Iterable<_i2.Offerta>? offerteIncluse; + + final Iterable<_i2.Offerta>? inclusaInOfferte; + + final _i3.OffertaCountOutputType? $count; +} + +class ServizioEwo { + const ServizioEwo({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + this.$count, + }); + + factory ServizioEwo.fromJson(Map json) => ServizioEwo( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + tipoServizioEwo: json['tipoServizioEwo'] != null + ? _i2.TipoServizioEwo.values + .firstWhere((e) => e.name == json['tipoServizioEwo']) + : null, + colore: json['colore'], + icona: json['icona'], + fornitore: json['fornitore'] is Map + ? _i2.Fornitore.fromJson(json['fornitore']) + : null, + tipiPratiche: (json['tipiPratiche'] as Iterable?) + ?.map((json) => _i2.TipoPratica.fromJson(json)), + forniture: (json['forniture'] as Iterable?) + ?.map((json) => _i2.Fornitura.fromJson(json)), + statiPossibiliPratiche: (json['statiPossibiliPratiche'] as Iterable?) + ?.map((json) => _i2.StatoPratica.fromJson(json)), + statiPossibiliContratti: (json['statiPossibiliContratti'] as Iterable?) + ?.map((json) => _i2.StatoContratto.fromJson(json)), + offerte: (json['offerte'] as Iterable?) + ?.map((json) => _i2.Offerta.fromJson(json)), + moduliContratto: (json['moduliContratto'] as Iterable?) + ?.map((json) => _i2.ModuloContratto.fromJson(json)), + $count: json['_count'] is Map + ? _i3.ServizioEwoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i2.TipoServizioEwo? tipoServizioEwo; + + final String? colore; + + final String? icona; + + final _i2.Fornitore? fornitore; + + final Iterable<_i2.TipoPratica>? tipiPratiche; + + final Iterable<_i2.Fornitura>? forniture; + + final Iterable<_i2.StatoPratica>? statiPossibiliPratiche; + + final Iterable<_i2.StatoContratto>? statiPossibiliContratti; + + final Iterable<_i2.Offerta>? offerte; + + final Iterable<_i2.ModuloContratto>? moduliContratto; + + final _i3.ServizioEwoCountOutputType? $count; +} + +class Fornitura { + const Fornitura({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + factory Fornitura.fromJson(Map json) => Fornitura( + uuid: json['uuid'], + etichetta: json['etichetta'], + domicilioUuid: json['domicilioUuid'], + servizioEwoId: json['servizioEwoId'], + domicilio: json['domicilio'] is Map + ? _i2.Domicilio.fromJson(json['domicilio']) + : null, + servizioEwo: json['servizioEwo'] is Map + ? _i2.ServizioEwo.fromJson(json['servizioEwo']) + : null, + fornituraLuce: json['fornituraLuce'] is Map + ? _i2.FornituraLuce.fromJson(json['fornituraLuce']) + : null, + fornituraGas: json['fornituraGas'] is Map + ? _i2.FornituraGas.fromJson(json['fornituraGas']) + : null, + ); + + final String? uuid; + + final String? etichetta; + + final String? domicilioUuid; + + final String? servizioEwoId; + + final _i2.Domicilio? domicilio; + + final _i2.ServizioEwo? servizioEwo; + + final _i2.FornituraLuce? fornituraLuce; + + final _i2.FornituraGas? fornituraGas; +} + +class FornituraLuce { + const FornituraLuce({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + this.$count, + }); + + factory FornituraLuce.fromJson(Map json) => FornituraLuce( + uuid: json['uuid'], + pod: json['pod'], + fornituraUuid: json['fornituraUuid'], + potenza: json['potenza'], + tensione: json['tensione'], + consumoAnnuoLuce: json['consumoAnnuoLuce'] is Map + ? _i2.ConsumoAnnuoLuce.fromJson(json['consumoAnnuoLuce']) + : null, + contrattiEnelLuce: (json['contrattiEnelLuce'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelLuce.fromJson(json)), + fornitura: json['fornitura'] is Map + ? _i2.Fornitura.fromJson(json['fornitura']) + : null, + $count: json['_count'] is Map + ? _i3.FornituraLuceCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? pod; + + final String? fornituraUuid; + + final double? potenza; + + final double? tensione; + + final _i2.ConsumoAnnuoLuce? consumoAnnuoLuce; + + final Iterable<_i2.ContrattoEnelLuce>? contrattiEnelLuce; + + final _i2.Fornitura? fornitura; + + final _i3.FornituraLuceCountOutputType? $count; +} + +class ContrattoEnelLuce { + const ContrattoEnelLuce({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + factory ContrattoEnelLuce.fromJson(Map json) => ContrattoEnelLuce( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraLuceUuid: json['fornituraLuceUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + stato: json['stato'] is Map + ? _i2.StatoContratto.fromJson(json['stato']) + : null, + fornituraLuce: json['fornituraLuce'] is Map + ? _i2.FornituraLuce.fromJson(json['fornituraLuce']) + : null, + contratto: json['contratto'] is Map + ? _i2.Contratto.fromJson(json['contratto']) + : null, + offerta: json['offerta'] is Map + ? _i2.Offerta.fromJson(json['offerta']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraLuceUuid; + + final String? contrattoUuid; + + final String? offertaUuid; + + final _i2.StatoContratto? stato; + + final _i2.FornituraLuce? fornituraLuce; + + final _i2.Contratto? contratto; + + final _i2.Offerta? offerta; +} + +class Contratto { + const Contratto({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + this.$count, + }); + + factory Contratto.fromJson(Map json) => Contratto( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + dataAttivazione: json['dataAttivazione'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + trend: json['trend'], + nota: json['nota'], + marketingEnelEnergia: json['marketingEnelEnergia'], + marketingGruppoEnel: json['marketingGruppoEnel'], + profilazioneEnelEnergia: json['profilazioneEnelEnergia'], + bollettaWeb: json['bollettaWeb'], + rid: json['rid'], + dataCessazione: json['dataCessazione'], + mesiDurata: json['mesiDurata'], + offertaUuid: json['offertaUuid'], + statoContrattoId: json['statoContrattoId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + praticaUuid: json['praticaUuid'], + moduloContrattoId: json['moduloContrattoId'], + contrattiEnelLuce: (json['contrattiEnelLuce'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelLuce.fromJson(json)), + contrattiEnelGas: (json['contrattiEnelGas'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelGas.fromJson(json)), + contrattiEnelFibra: (json['contrattiEnelFibra'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelFibra.fromJson(json)), + contrattiEnelXAssicurazione: + (json['contrattiEnelXAssicurazione'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelXAssicurazione.fromJson(json)), + stato: json['stato'] is Map + ? _i2.StatoContratto.fromJson(json['stato']) + : null, + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + utente: + json['utente'] is Map ? _i2.Utente.fromJson(json['utente']) : null, + negozio: json['negozio'] is Map + ? _i2.Negozio.fromJson(json['negozio']) + : null, + pratica: json['pratica'] is Map + ? _i2.Pratica.fromJson(json['pratica']) + : null, + modulo: json['modulo'] is Map + ? _i2.ModuloContratto.fromJson(json['modulo']) + : null, + $count: json['_count'] is Map + ? _i3.ContrattoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final DateTime? dataAttivazione; + + final DateTime? ultimoAggiornamentoStato; + + final bool? trend; + + final String? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final DateTime? dataCessazione; + + final int? mesiDurata; + + final String? offertaUuid; + + final String? statoContrattoId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? praticaUuid; + + final String? moduloContrattoId; + + final Iterable<_i2.ContrattoEnelLuce>? contrattiEnelLuce; + + final Iterable<_i2.ContrattoEnelGas>? contrattiEnelGas; + + final Iterable<_i2.ContrattoEnelFibra>? contrattiEnelFibra; + + final Iterable<_i2.ContrattoEnelXAssicurazione>? contrattiEnelXAssicurazione; + + final _i2.StatoContratto? stato; + + final _i2.Soggetto? soggetto; + + final _i2.Utente? utente; + + final _i2.Negozio? negozio; + + final _i2.Pratica? pratica; + + final _i2.ModuloContratto? modulo; + + final _i3.ContrattoCountOutputType? $count; +} + +class StatoContratto { + const StatoContratto({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.$count, + }); + + factory StatoContratto.fromJson(Map json) => StatoContratto( + id: json['id'], + nome: json['nome'], + contratti: (json['contratti'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + serviziEwo: (json['serviziEwo'] as Iterable?) + ?.map((json) => _i2.ServizioEwo.fromJson(json)), + contrattiEnelLuce: (json['contrattiEnelLuce'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelLuce.fromJson(json)), + contrattiEnelGas: (json['contrattiEnelGas'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelGas.fromJson(json)), + contrattiEnelFibra: (json['contrattiEnelFibra'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelFibra.fromJson(json)), + contrattiEnelXAssicurazione: + (json['contrattiEnelXAssicurazione'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelXAssicurazione.fromJson(json)), + $count: json['_count'] is Map + ? _i3.StatoContrattoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? id; + + final String? nome; + + final Iterable<_i2.Contratto>? contratti; + + final Iterable<_i2.ServizioEwo>? serviziEwo; + + final Iterable<_i2.ContrattoEnelLuce>? contrattiEnelLuce; + + final Iterable<_i2.ContrattoEnelGas>? contrattiEnelGas; + + final Iterable<_i2.ContrattoEnelFibra>? contrattiEnelFibra; + + final Iterable<_i2.ContrattoEnelXAssicurazione>? contrattiEnelXAssicurazione; + + final _i3.StatoContrattoCountOutputType? $count; +} + +class ContrattoEnelXAssicurazione { + const ContrattoEnelXAssicurazione({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + factory ContrattoEnelXAssicurazione.fromJson(Map json) => + ContrattoEnelXAssicurazione( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + stato: json['stato'] is Map + ? _i2.StatoContratto.fromJson(json['stato']) + : null, + contratto: json['contratto'] is Map + ? _i2.Contratto.fromJson(json['contratto']) + : null, + domicilio: json['domicilio'] is Map + ? _i2.Domicilio.fromJson(json['domicilio']) + : null, + offerta: json['offerta'] is Map + ? _i2.Offerta.fromJson(json['offerta']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final String? domicilioUuid; + + final String? offertaUuid; + + final _i2.StatoContratto? stato; + + final _i2.Contratto? contratto; + + final _i2.Domicilio? domicilio; + + final _i2.Offerta? offerta; +} + +class Domicilio { + const Domicilio({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + this.$count, + }); + + factory Domicilio.fromJson(Map json) => Domicilio( + uuid: json['uuid'], + etichetta: json['etichetta'], + indirizzo: json['indirizzo'], + numeroCivico: json['numeroCivico'], + citta: json['citta'], + cap: json['cap'], + provincia: json['provincia'], + soggettoUuid: json['soggettoUuid'], + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + contrattiEnelXAssicurazione: + (json['contrattiEnelXAssicurazione'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelXAssicurazione.fromJson(json)), + forniture: (json['forniture'] as Iterable?) + ?.map((json) => _i2.Fornitura.fromJson(json)), + contrattiEnelFibra: (json['contrattiEnelFibra'] as Iterable?) + ?.map((json) => _i2.ContrattoEnelFibra.fromJson(json)), + prodottiOrdinati: (json['prodottiOrdinati'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + leads: (json['leads'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + $count: json['_count'] is Map + ? _i3.DomicilioCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? etichetta; + + final String? indirizzo; + + final String? numeroCivico; + + final String? citta; + + final String? cap; + + final String? provincia; + + final String? soggettoUuid; + + final _i2.Soggetto? soggetto; + + final Iterable<_i2.ContrattoEnelXAssicurazione>? contrattiEnelXAssicurazione; + + final Iterable<_i2.Fornitura>? forniture; + + final Iterable<_i2.ContrattoEnelFibra>? contrattiEnelFibra; + + final Iterable<_i2.Ordine>? prodottiOrdinati; + + final Iterable<_i2.Lead>? leads; + + final _i3.DomicilioCountOutputType? $count; +} + +class Privacy { + const Privacy({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.soggetto, + }); + + factory Privacy.fromJson(Map json) => Privacy( + uuid: json['uuid'], + trattamento: json['trattamento'], + comunicazione: json['comunicazione'], + profilazione: json['profilazione'], + soggettoUuid: json['soggettoUuid'], + soggetto: json['soggetto'] is Map + ? _i2.Soggetto.fromJson(json['soggetto']) + : null, + ); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final String? soggettoUuid; + + final _i2.Soggetto? soggetto; +} + +class Soggetto { + const Soggetto({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + this.$count, + }); + + factory Soggetto.fromJson(Map json) => Soggetto( + uuid: json['uuid'], + ragioneSociale: json['ragioneSociale'], + iban: json['iban'], + tipo: json['tipo'] != null + ? _i2.TipoSoggetto.values.firstWhere((e) => e.name == json['tipo']) + : null, + negozioPreferitoUuid: json['negozioPreferitoUuid'], + codiceFiscale: json['codiceFiscale'], + note: json['note'], + soggettoBusinessInfo: json['soggettoBusinessInfo'] is Map + ? _i2.SoggettoBusinessInfo.fromJson(json['soggettoBusinessInfo']) + : null, + domicili: (json['domicili'] as Iterable?) + ?.map((json) => _i2.Domicilio.fromJson(json)), + praticheIntestate: (json['praticheIntestate'] as Iterable?) + ?.map((json) => _i2.Pratica.fromJson(json)), + contratti: (json['contratti'] as Iterable?) + ?.map((json) => _i2.Contratto.fromJson(json)), + indirizziEmail: (json['indirizziEmail'] as Iterable?) + ?.map((json) => _i2.IndirizzoEmail.fromJson(json)), + numeriTelefono: (json['numeriTelefono'] as Iterable?) + ?.map((json) => _i2.NumeroTelefono.fromJson(json)), + negozioPreferito: json['negozioPreferito'] is Map + ? _i2.Negozio.fromJson(json['negozioPreferito']) + : null, + prodottiOrdinati: (json['prodottiOrdinati'] as Iterable?) + ?.map((json) => _i2.Ordine.fromJson(json)), + leads: (json['leads'] as Iterable?) + ?.map((json) => _i2.Lead.fromJson(json)), + privacy: json['privacy'] is Map + ? _i2.Privacy.fromJson(json['privacy']) + : null, + $count: json['_count'] is Map + ? _i3.SoggettoCountOutputType.fromJson(json['_count']) + : null, + ); + + final String? uuid; + + final String? ragioneSociale; + + final String? iban; + + final _i2.TipoSoggetto? tipo; + + final String? negozioPreferitoUuid; + + final String? codiceFiscale; + + final String? note; + + final _i2.SoggettoBusinessInfo? soggettoBusinessInfo; + + final Iterable<_i2.Domicilio>? domicili; + + final Iterable<_i2.Pratica>? praticheIntestate; + + final Iterable<_i2.Contratto>? contratti; + + final Iterable<_i2.IndirizzoEmail>? indirizziEmail; + + final Iterable<_i2.NumeroTelefono>? numeriTelefono; + + final _i2.Negozio? negozioPreferito; + + final Iterable<_i2.Ordine>? prodottiOrdinati; + + final Iterable<_i2.Lead>? leads; + + final _i2.Privacy? privacy; + + final _i3.SoggettoCountOutputType? $count; +} diff --git a/i340/prisma/generated_dart_client/prisma.dart b/i340/prisma/generated_dart_client/prisma.dart new file mode 100644 index 00000000..128753d9 --- /dev/null +++ b/i340/prisma/generated_dart_client/prisma.dart @@ -0,0 +1,143077 @@ +// ignore_for_file: non_constant_identifier_names + +library prisma.namespace.prisma; // ignore_for_file: no_leading_underscores_for_library_prefixes + +import 'package:orm/orm.dart' as _i1; + +import 'model.dart' as _i3; +import 'prisma.dart' as _i2; + +class TipoModuloContrattoCountOutputType { + const TipoModuloContrattoCountOutputType({this.moduloContratto}); + + factory TipoModuloContrattoCountOutputType.fromJson(Map json) => + TipoModuloContrattoCountOutputType( + moduloContratto: json['ModuloContratto']); + + final int? moduloContratto; +} + +class ModuloContrattoCountOutputType { + const ModuloContrattoCountOutputType({ + this.serviziEwoCollegabili, + this.contratti, + }); + + factory ModuloContrattoCountOutputType.fromJson(Map json) => + ModuloContrattoCountOutputType( + serviziEwoCollegabili: json['serviziEwoCollegabili'], + contratti: json['contratti'], + ); + + final int? serviziEwoCollegabili; + + final int? contratti; +} + +class ProduttoreCountOutputType { + const ProduttoreCountOutputType({this.prodotti}); + + factory ProduttoreCountOutputType.fromJson(Map json) => + ProduttoreCountOutputType(prodotti: json['prodotti']); + + final int? prodotti; +} + +class StatoOrdineCountOutputType { + const StatoOrdineCountOutputType({this.ordini}); + + factory StatoOrdineCountOutputType.fromJson(Map json) => + StatoOrdineCountOutputType(ordini: json['ordini']); + + final int? ordini; +} + +class TipoPraticaCountOutputType { + const TipoPraticaCountOutputType({ + this.serviziEwo, + this.pratiche, + }); + + factory TipoPraticaCountOutputType.fromJson(Map json) => + TipoPraticaCountOutputType( + serviziEwo: json['serviziEwo'], + pratiche: json['pratiche'], + ); + + final int? serviziEwo; + + final int? pratiche; +} + +class StatoPraticaCountOutputType { + const StatoPraticaCountOutputType({ + this.pratiche, + this.serviziEwo, + }); + + factory StatoPraticaCountOutputType.fromJson(Map json) => + StatoPraticaCountOutputType( + pratiche: json['pratiche'], + serviziEwo: json['serviziEwo'], + ); + + final int? pratiche; + + final int? serviziEwo; +} + +class PraticaCountOutputType { + const PraticaCountOutputType({this.contratto}); + + factory PraticaCountOutputType.fromJson(Map json) => + PraticaCountOutputType(contratto: json['contratto']); + + final int? contratto; +} + +class ZonaNegozioCountOutputType { + const ZonaNegozioCountOutputType({this.negozi}); + + factory ZonaNegozioCountOutputType.fromJson(Map json) => + ZonaNegozioCountOutputType(negozi: json['negozi']); + + final int? negozi; +} + +class NegozioCountOutputType { + const NegozioCountOutputType({ + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + factory NegozioCountOutputType.fromJson(Map json) => NegozioCountOutputType( + pratiche: json['pratiche'], + utenti: json['utenti'], + contratti: json['contratti'], + soggetti: json['soggetti'], + ingressi: json['ingressi'], + leads: json['leads'], + ordine: json['Ordine'], + ); + + final int? pratiche; + + final int? utenti; + + final int? contratti; + + final int? soggetti; + + final int? ingressi; + + final int? leads; + + final int? ordine; +} + +class UtenteCountOutputType { + const UtenteCountOutputType({ + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + factory UtenteCountOutputType.fromJson(Map json) => UtenteCountOutputType( + contratti: json['contratti'], + pratiche: json['pratiche'], + ingressi: json['ingressi'], + leadsGestiti: json['leadsGestiti'], + leadsAssegnati: json['leadsAssegnati'], + opportunitaGestite: json['opportunitaGestite'], + opportunitaAssegnate: json['opportunitaAssegnate'], + ordini: json['ordini'], + history: json['history'], + ); + + final int? contratti; + + final int? pratiche; + + final int? ingressi; + + final int? leadsGestiti; + + final int? leadsAssegnati; + + final int? opportunitaGestite; + + final int? opportunitaAssegnate; + + final int? ordini; + + final int? history; +} + +class OpportunitaCountOutputType { + const OpportunitaCountOutputType({ + this.leads, + this.gestoriLead, + this.agenti, + }); + + factory OpportunitaCountOutputType.fromJson(Map json) => + OpportunitaCountOutputType( + leads: json['leads'], + gestoriLead: json['gestoriLead'], + agenti: json['agenti'], + ); + + final int? leads; + + final int? gestoriLead; + + final int? agenti; +} + +class StatoOpportunitaCountOutputType { + const StatoOpportunitaCountOutputType({this.leads}); + + factory StatoOpportunitaCountOutputType.fromJson(Map json) => + StatoOpportunitaCountOutputType(leads: json['leads']); + + final int? leads; +} + +class LeadCountOutputType { + const LeadCountOutputType({ + this.ordine, + this.history, + }); + + factory LeadCountOutputType.fromJson(Map json) => LeadCountOutputType( + ordine: json['ordine'], + history: json['history'], + ); + + final int? ordine; + + final int? history; +} + +class OrdineCountOutputType { + const OrdineCountOutputType({this.prodotti}); + + factory OrdineCountOutputType.fromJson(Map json) => + OrdineCountOutputType(prodotti: json['prodotti']); + + final int? prodotti; +} + +class TipoProdottoCountOutputType { + const TipoProdottoCountOutputType({this.prodotti}); + + factory TipoProdottoCountOutputType.fromJson(Map json) => + TipoProdottoCountOutputType(prodotti: json['prodotti']); + + final int? prodotti; +} + +class ProdottoCountOutputType { + const ProdottoCountOutputType({this.prodottiOrdinati}); + + factory ProdottoCountOutputType.fromJson(Map json) => + ProdottoCountOutputType(prodottiOrdinati: json['prodottiOrdinati']); + + final int? prodottiOrdinati; +} + +class FornitoreCountOutputType { + const FornitoreCountOutputType({ + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + factory FornitoreCountOutputType.fromJson(Map json) => + FornitoreCountOutputType( + serviziEwo: json['serviziEwo'], + moduliContratto: json['moduliContratto'], + prodotti: json['prodotti'], + ); + + final int? serviziEwo; + + final int? moduliContratto; + + final int? prodotti; +} + +class ClasseMisuratoreGasCountOutputType { + const ClasseMisuratoreGasCountOutputType({this.fornituraGas}); + + factory ClasseMisuratoreGasCountOutputType.fromJson(Map json) => + ClasseMisuratoreGasCountOutputType(fornituraGas: json['fornituraGas']); + + final int? fornituraGas; +} + +class FornituraGasCountOutputType { + const FornituraGasCountOutputType({this.contrattiEnelGas}); + + factory FornituraGasCountOutputType.fromJson(Map json) => + FornituraGasCountOutputType(contrattiEnelGas: json['contrattiEnelGas']); + + final int? contrattiEnelGas; +} + +class OffertaCountOutputType { + const OffertaCountOutputType({ + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + factory OffertaCountOutputType.fromJson(Map json) => OffertaCountOutputType( + contrattiEnelLuce: json['contrattiEnelLuce'], + contrattiEnelGas: json['contrattiEnelGas'], + contrattiEnelFibra: json['contrattiEnelFibra'], + contrattiEnelXAssicurazione: json['contrattiEnelXAssicurazione'], + offerteIncluse: json['offerteIncluse'], + inclusaInOfferte: json['inclusaInOfferte'], + ); + + final int? contrattiEnelLuce; + + final int? contrattiEnelGas; + + final int? contrattiEnelFibra; + + final int? contrattiEnelXAssicurazione; + + final int? offerteIncluse; + + final int? inclusaInOfferte; +} + +class ServizioEwoCountOutputType { + const ServizioEwoCountOutputType({ + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + factory ServizioEwoCountOutputType.fromJson(Map json) => + ServizioEwoCountOutputType( + tipiPratiche: json['tipiPratiche'], + forniture: json['forniture'], + statiPossibiliPratiche: json['statiPossibiliPratiche'], + statiPossibiliContratti: json['statiPossibiliContratti'], + offerte: json['offerte'], + moduliContratto: json['moduliContratto'], + ); + + final int? tipiPratiche; + + final int? forniture; + + final int? statiPossibiliPratiche; + + final int? statiPossibiliContratti; + + final int? offerte; + + final int? moduliContratto; +} + +class FornituraLuceCountOutputType { + const FornituraLuceCountOutputType({this.contrattiEnelLuce}); + + factory FornituraLuceCountOutputType.fromJson(Map json) => + FornituraLuceCountOutputType( + contrattiEnelLuce: json['contrattiEnelLuce']); + + final int? contrattiEnelLuce; +} + +class ContrattoCountOutputType { + const ContrattoCountOutputType({ + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + factory ContrattoCountOutputType.fromJson(Map json) => + ContrattoCountOutputType( + contrattiEnelLuce: json['contrattiEnelLuce'], + contrattiEnelGas: json['contrattiEnelGas'], + contrattiEnelFibra: json['contrattiEnelFibra'], + contrattiEnelXAssicurazione: json['contrattiEnelXAssicurazione'], + ); + + final int? contrattiEnelLuce; + + final int? contrattiEnelGas; + + final int? contrattiEnelFibra; + + final int? contrattiEnelXAssicurazione; +} + +class StatoContrattoCountOutputType { + const StatoContrattoCountOutputType({ + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + factory StatoContrattoCountOutputType.fromJson(Map json) => + StatoContrattoCountOutputType( + contratti: json['contratti'], + serviziEwo: json['serviziEwo'], + contrattiEnelLuce: json['contrattiEnelLuce'], + contrattiEnelGas: json['contrattiEnelGas'], + contrattiEnelFibra: json['contrattiEnelFibra'], + contrattiEnelXAssicurazione: json['contrattiEnelXAssicurazione'], + ); + + final int? contratti; + + final int? serviziEwo; + + final int? contrattiEnelLuce; + + final int? contrattiEnelGas; + + final int? contrattiEnelFibra; + + final int? contrattiEnelXAssicurazione; +} + +class DomicilioCountOutputType { + const DomicilioCountOutputType({ + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + factory DomicilioCountOutputType.fromJson(Map json) => + DomicilioCountOutputType( + contrattiEnelXAssicurazione: json['contrattiEnelXAssicurazione'], + forniture: json['forniture'], + contrattiEnelFibra: json['contrattiEnelFibra'], + prodottiOrdinati: json['prodottiOrdinati'], + leads: json['leads'], + ); + + final int? contrattiEnelXAssicurazione; + + final int? forniture; + + final int? contrattiEnelFibra; + + final int? prodottiOrdinati; + + final int? leads; +} + +class SoggettoCountOutputType { + const SoggettoCountOutputType({ + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + }); + + factory SoggettoCountOutputType.fromJson(Map json) => SoggettoCountOutputType( + domicili: json['domicili'], + praticheIntestate: json['praticheIntestate'], + contratti: json['contratti'], + indirizziEmail: json['indirizziEmail'], + numeriTelefono: json['numeriTelefono'], + prodottiOrdinati: json['prodottiOrdinati'], + leads: json['leads'], + ); + + final int? domicili; + + final int? praticheIntestate; + + final int? contratti; + + final int? indirizziEmail; + + final int? numeriTelefono; + + final int? prodottiOrdinati; + + final int? leads; +} + +class NestedStringFilter implements _i1.JsonConvertible> { + const NestedStringFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + }; +} + +class StringFilter implements _i1.JsonConvertible> { + const StringFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + }; +} + +class NestedStringNullableFilter + implements _i1.JsonConvertible> { + const NestedStringNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + }; +} + +class StringNullableFilter + implements _i1.JsonConvertible> { + const StringNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + }; +} + +class NestedEnumTipoSoggettoFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoSoggettoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i1.Reference<_i3.TipoSoggetto>>? + equals; + + final Iterable<_i3.TipoSoggetto>? $in; + + final Iterable<_i3.TipoSoggetto>? notIn; + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i2.NestedEnumTipoSoggettoFilter>? + not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTipoSoggettoFilter + implements _i1.JsonConvertible> { + const EnumTipoSoggettoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i1.Reference<_i3.TipoSoggetto>>? + equals; + + final Iterable<_i3.TipoSoggetto>? $in; + + final Iterable<_i3.TipoSoggetto>? notIn; + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i2.NestedEnumTipoSoggettoFilter>? + not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class SoggettoNullableRelationFilter + implements _i1.JsonConvertible> { + const SoggettoNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class IndirizzoEmailWhereInput + implements _i1.JsonConvertible> { + const IndirizzoEmailWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, + Iterable<_i2.IndirizzoEmailWhereInput>>? AND; + + final Iterable<_i2.IndirizzoEmailWhereInput>? OR; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, + Iterable<_i2.IndirizzoEmailWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? legaleRappresentanteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? referenteUuid; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentante; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailNullableRelationFilter + implements _i1.JsonConvertible> { + const IndirizzoEmailNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class SoggettoBusinessInfoRelationFilter + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.SoggettoBusinessInfoWhereInput? $is; + + final _i2.SoggettoBusinessInfoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ReferenteWhereInput implements _i1.JsonConvertible> { + const ReferenteWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1 + .PrismaUnion<_i2.ReferenteWhereInput, Iterable<_i2.ReferenteWhereInput>>? + AND; + + final Iterable<_i2.ReferenteWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ReferenteWhereInput, Iterable<_i2.ReferenteWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion<_i2.NumeroTelefonoNullableRelationFilter, + _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>>? + numeroTelefono; + + final _i1.PrismaUnion<_i2.IndirizzoEmailNullableRelationFilter, + _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>>? + indirizzoEmail; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoRelationFilter, + _i2.SoggettoBusinessInfoWhereInput>? soggettoBusinessInfo; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteNullableRelationFilter + implements _i1.JsonConvertible> { + const ReferenteNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NumeroTelefonoWhereInput + implements _i1.JsonConvertible> { + const NumeroTelefonoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, + Iterable<_i2.NumeroTelefonoWhereInput>>? AND; + + final Iterable<_i2.NumeroTelefonoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, + Iterable<_i2.NumeroTelefonoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? numero; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? legaleRappresentateUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? referenteUuid; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentate; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class NumeroTelefonoNullableRelationFilter + implements _i1.JsonConvertible> { + const NumeroTelefonoNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class LegaleRappresentanteWhereInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, + Iterable<_i2.LegaleRappresentanteWhereInput>>? AND; + + final Iterable<_i2.LegaleRappresentanteWhereInput>? OR; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, + Iterable<_i2.LegaleRappresentanteWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion<_i2.NumeroTelefonoNullableRelationFilter, + _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>>? + numeroTelefono; + + final _i1.PrismaUnion<_i2.IndirizzoEmailNullableRelationFilter, + _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>>? + indirizzoEmail; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoRelationFilter, + _i2.SoggettoBusinessInfoWhereInput>? soggettoBusinessInfo; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteNullableRelationFilter + implements _i1.JsonConvertible> { + const LegaleRappresentanteNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>? + $is; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>? + isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class SoggettoRelationFilter + implements _i1.JsonConvertible> { + const SoggettoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.SoggettoWhereInput? $is; + + final _i2.SoggettoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class SoggettoBusinessInfoWhereInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, + Iterable<_i2.SoggettoBusinessInfoWhereInput>>? AND; + + final Iterable<_i2.SoggettoBusinessInfoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, + Iterable<_i2.SoggettoBusinessInfoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? rea; + + final _i1.PrismaUnion<_i2.StringFilter, String>? partitaIVA; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? sdi; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentante; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoNullableRelationFilter + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, _i1.PrismaNull>? + $is; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, _i1.PrismaNull>? + isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NestedDateTimeFilter + implements _i1.JsonConvertible> { + const NestedDateTimeFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class DateTimeFilter implements _i1.JsonConvertible> { + const DateTimeFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class NestedDateTimeNullableFilter + implements _i1.JsonConvertible> { + const NestedDateTimeNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class DateTimeNullableFilter + implements _i1.JsonConvertible> { + const DateTimeNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class NestedBoolNullableFilter + implements _i1.JsonConvertible> { + const NestedBoolNullableFilter({ + this.equals, + this.not, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + }; +} + +class BoolNullableFilter implements _i1.JsonConvertible> { + const BoolNullableFilter({ + this.equals, + this.not, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + }; +} + +class NestedBoolFilter implements _i1.JsonConvertible> { + const NestedBoolFilter({ + this.equals, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + }; +} + +class BoolFilter implements _i1.JsonConvertible> { + const BoolFilter({ + this.equals, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + }; +} + +class NestedIntNullableFilter + implements _i1.JsonConvertible> { + const NestedIntNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class IntNullableFilter implements _i1.JsonConvertible> { + const IntNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class NestedFloatNullableFilter + implements _i1.JsonConvertible> { + const NestedFloatNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class FloatNullableFilter implements _i1.JsonConvertible> { + const FloatNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class NestedFloatFilter implements _i1.JsonConvertible> { + const NestedFloatFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class FloatFilter implements _i1.JsonConvertible> { + const FloatFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class ConsumoAnnuoLuceWhereInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.fornituraLuce, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, + Iterable<_i2.ConsumoAnnuoLuceWhereInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, + Iterable<_i2.ConsumoAnnuoLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.FornituraLuceRelationFilter, + _i2.FornituraLuceWhereInput>? fornituraLuce; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + 'fornituraLuce': fornituraLuce, + }; +} + +class ConsumoAnnuoLuceNullableRelationFilter + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class DomicilioRelationFilter + implements _i1.JsonConvertible> { + const DomicilioRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.DomicilioWhereInput? $is; + + final _i2.DomicilioWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NestedEnumTipoServizioEwoFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoServizioEwoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i1.Reference<_i3.TipoServizioEwo>>? + equals; + + final Iterable<_i3.TipoServizioEwo>? $in; + + final Iterable<_i3.TipoServizioEwo>? notIn; + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i2.NestedEnumTipoServizioEwoFilter>? + not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTipoServizioEwoFilter + implements _i1.JsonConvertible> { + const EnumTipoServizioEwoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i1.Reference<_i3.TipoServizioEwo>>? + equals; + + final Iterable<_i3.TipoServizioEwo>? $in; + + final Iterable<_i3.TipoServizioEwo>? notIn; + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i2.NestedEnumTipoServizioEwoFilter>? + not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class ServizioEwoListRelationFilter + implements _i1.JsonConvertible> { + const ServizioEwoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ServizioEwoWhereInput? every; + + final _i2.ServizioEwoWhereInput? some; + + final _i2.ServizioEwoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NestedEnumCanaleFilter + implements _i1.JsonConvertible> { + const NestedEnumCanaleFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.Canale, _i1.Reference<_i3.Canale>>? equals; + + final Iterable<_i3.Canale>? $in; + + final Iterable<_i3.Canale>? notIn; + + final _i1.PrismaUnion<_i3.Canale, _i2.NestedEnumCanaleFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumCanaleFilter implements _i1.JsonConvertible> { + const EnumCanaleFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.Canale, _i1.Reference<_i3.Canale>>? equals; + + final Iterable<_i3.Canale>? $in; + + final Iterable<_i3.Canale>? notIn; + + final _i1.PrismaUnion<_i3.Canale, _i2.NestedEnumCanaleFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class NestedIntFilter implements _i1.JsonConvertible> { + const NestedIntFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class IntFilter implements _i1.JsonConvertible> { + const IntFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + }; +} + +class TipoModuloContrattoWhereInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final _i1.PrismaUnion<_i2.TipoModuloContrattoWhereInput, + Iterable<_i2.TipoModuloContrattoWhereInput>>? AND; + + final Iterable<_i2.TipoModuloContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoWhereInput, + Iterable<_i2.TipoModuloContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.IntFilter, int>? numeroOfferteCollegabili; + + final _i2.ModuloContrattoListRelationFilter? moduloContratto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class TipoModuloContrattoRelationFilter + implements _i1.JsonConvertible> { + const TipoModuloContrattoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.TipoModuloContrattoWhereInput? $is; + + final _i2.TipoModuloContrattoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ModuloContrattoWhereInput + implements _i1.JsonConvertible> { + const ModuloContrattoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, + Iterable<_i2.ModuloContrattoWhereInput>>? AND; + + final Iterable<_i2.ModuloContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, + Iterable<_i2.ModuloContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? + clienteTarget; + + final _i1.PrismaUnion<_i2.EnumCanaleFilter, _i3.Canale>? canale; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoModuloContrattoId; + + final _i2.ServizioEwoListRelationFilter? serviziEwoCollegabili; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoRelationFilter, + _i2.TipoModuloContrattoWhereInput>? tipoModulo; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoListRelationFilter + implements _i1.JsonConvertible> { + const ModuloContrattoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ModuloContrattoWhereInput? every; + + final _i2.ModuloContrattoWhereInput? some; + + final _i2.ModuloContrattoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class ProduttoreWhereInput + implements _i1.JsonConvertible> { + const ProduttoreWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion<_i2.ProduttoreWhereInput, + Iterable<_i2.ProduttoreWhereInput>>? AND; + + final Iterable<_i2.ProduttoreWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ProduttoreWhereInput, + Iterable<_i2.ProduttoreWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProduttoreRelationFilter + implements _i1.JsonConvertible> { + const ProduttoreRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.ProduttoreWhereInput? $is; + + final _i2.ProduttoreWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class DomicilioNullableRelationFilter + implements _i1.JsonConvertible> { + const DomicilioNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NestedEnumTipoStatoFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoStatoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoStato, _i1.Reference<_i3.TipoStato>>? equals; + + final Iterable<_i3.TipoStato>? $in; + + final Iterable<_i3.TipoStato>? notIn; + + final _i1.PrismaUnion<_i3.TipoStato, _i2.NestedEnumTipoStatoFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTipoStatoFilter implements _i1.JsonConvertible> { + const EnumTipoStatoFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoStato, _i1.Reference<_i3.TipoStato>>? equals; + + final Iterable<_i3.TipoStato>? $in; + + final Iterable<_i3.TipoStato>? notIn; + + final _i1.PrismaUnion<_i3.TipoStato, _i2.NestedEnumTipoStatoFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class StatoOrdineWhereInput + implements _i1.JsonConvertible> { + const StatoOrdineWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, + Iterable<_i2.StatoOrdineWhereInput>>? AND; + + final Iterable<_i2.StatoOrdineWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, + Iterable<_i2.StatoOrdineWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoFilter, _i3.TipoStato>? tipoStato; + + final _i1.PrismaUnion<_i2.IntFilter, int>? ordine; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i2.OrdineListRelationFilter? ordini; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class StatoOrdineNullableRelationFilter + implements _i1.JsonConvertible> { + const StatoOrdineNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class LeadListRelationFilter + implements _i1.JsonConvertible> { + const LeadListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.LeadWhereInput? every; + + final _i2.LeadWhereInput? some; + + final _i2.LeadWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NestedEnumRuoloUtenteFilter + implements _i1.JsonConvertible> { + const NestedEnumRuoloUtenteFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.RuoloUtente, _i1.Reference<_i3.RuoloUtente>>? + equals; + + final Iterable<_i3.RuoloUtente>? $in; + + final Iterable<_i3.RuoloUtente>? notIn; + + final _i1.PrismaUnion<_i3.RuoloUtente, _i2.NestedEnumRuoloUtenteFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumRuoloUtenteFilter + implements _i1.JsonConvertible> { + const EnumRuoloUtenteFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.RuoloUtente, _i1.Reference<_i3.RuoloUtente>>? + equals; + + final Iterable<_i3.RuoloUtente>? $in; + + final Iterable<_i3.RuoloUtente>? notIn; + + final _i1.PrismaUnion<_i3.RuoloUtente, _i2.NestedEnumRuoloUtenteFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class TipoPraticaWhereInput + implements _i1.JsonConvertible> { + const TipoPraticaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaWhereInput, + Iterable<_i2.TipoPraticaWhereInput>>? AND; + + final Iterable<_i2.TipoPraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereInput, + Iterable<_i2.TipoPraticaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.PraticaListRelationFilter? pratiche; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaRelationFilter + implements _i1.JsonConvertible> { + const TipoPraticaRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.TipoPraticaWhereInput? $is; + + final _i2.TipoPraticaWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class UtenteNullableRelationFilter + implements _i1.JsonConvertible> { + const UtenteNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class StatoPraticaWhereInput + implements _i1.JsonConvertible> { + const StatoPraticaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, + Iterable<_i2.StatoPraticaWhereInput>>? AND; + + final Iterable<_i2.StatoPraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, + Iterable<_i2.StatoPraticaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaNullableRelationFilter + implements _i1.JsonConvertible> { + const StatoPraticaNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class PraticaWhereInput implements _i1.JsonConvertible> { + const PraticaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion<_i2.PraticaWhereInput, Iterable<_i2.PraticaWhereInput>>? + AND; + + final Iterable<_i2.PraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.PraticaWhereInput, Iterable<_i2.PraticaWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoPraticaId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoPraticaId; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1 + .PrismaUnion<_i2.TipoPraticaRelationFilter, _i2.TipoPraticaWhereInput>? + tipoPratica; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.StatoPraticaNullableRelationFilter, + _i1.PrismaUnion<_i2.StatoPraticaWhereInput, _i1.PrismaNull>>? stato; + + final _i2.ContrattoListRelationFilter? contratto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaListRelationFilter + implements _i1.JsonConvertible> { + const PraticaListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.PraticaWhereInput? every; + + final _i2.PraticaWhereInput? some; + + final _i2.PraticaWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class SoggettoListRelationFilter + implements _i1.JsonConvertible> { + const SoggettoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.SoggettoWhereInput? every; + + final _i2.SoggettoWhereInput? some; + + final _i2.SoggettoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NegozioListRelationFilter + implements _i1.JsonConvertible> { + const NegozioListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.NegozioWhereInput? every; + + final _i2.NegozioWhereInput? some; + + final _i2.NegozioWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class ZonaNegozioWhereInput + implements _i1.JsonConvertible> { + const ZonaNegozioWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.negozi, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioWhereInput, + Iterable<_i2.ZonaNegozioWhereInput>>? AND; + + final Iterable<_i2.ZonaNegozioWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ZonaNegozioWhereInput, + Iterable<_i2.ZonaNegozioWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.NegozioListRelationFilter? negozi; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'negozi': negozi, + }; +} + +class ZonaNegozioRelationFilter + implements _i1.JsonConvertible> { + const ZonaNegozioRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.ZonaNegozioWhereInput? $is; + + final _i2.ZonaNegozioWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class UtenteRelationFilter + implements _i1.JsonConvertible> { + const UtenteRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.UtenteWhereInput? $is; + + final _i2.UtenteWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NegozioRelationFilter + implements _i1.JsonConvertible> { + const NegozioRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.NegozioWhereInput? $is; + + final _i2.NegozioWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class IngressiWhereInput implements _i1.JsonConvertible> { + const IngressiWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.utente, + this.negozio, + }); + + final _i1 + .PrismaUnion<_i2.IngressiWhereInput, Iterable<_i2.IngressiWhereInput>>? + AND; + + final Iterable<_i2.IngressiWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.IngressiWhereInput, Iterable<_i2.IngressiWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? data; + + final _i1.PrismaUnion<_i2.IntFilter, int>? clienti; + + final _i1.PrismaUnion<_i2.IntFilter, int>? nonClienti; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? negozioCodice; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.NegozioRelationFilter, _i2.NegozioWhereInput>? + negozio; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'utente': utente, + 'negozio': negozio, + }; +} + +class IngressiListRelationFilter + implements _i1.JsonConvertible> { + const IngressiListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.IngressiWhereInput? every; + + final _i2.IngressiWhereInput? some; + + final _i2.IngressiWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NegozioWhereInput implements _i1.JsonConvertible> { + const NegozioWhereInput({ + this.AND, + this.OR, + this.NOT, + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion<_i2.NegozioWhereInput, Iterable<_i2.NegozioWhereInput>>? + AND; + + final Iterable<_i2.NegozioWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NegozioWhereInput, Iterable<_i2.NegozioWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? zonaNegozioId; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.UtenteListRelationFilter? utenti; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.SoggettoListRelationFilter? soggetti; + + final _i1 + .PrismaUnion<_i2.ZonaNegozioRelationFilter, _i2.ZonaNegozioWhereInput>? + zonaNegozio; + + final _i2.IngressiListRelationFilter? ingressi; + + final _i2.LeadListRelationFilter? leads; + + final _i2.OrdineListRelationFilter? ordine; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioNullableRelationFilter + implements _i1.JsonConvertible> { + const NegozioNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class OpportunitaListRelationFilter + implements _i1.JsonConvertible> { + const OpportunitaListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.OpportunitaWhereInput? every; + + final _i2.OpportunitaWhereInput? some; + + final _i2.OpportunitaWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class HistoryRelationFilter + implements _i1.JsonConvertible> { + const HistoryRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.HistoryWhereInput? $is; + + final _i2.HistoryWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class HistoryCommentWhereInput + implements _i1.JsonConvertible> { + const HistoryCommentWhereInput({ + this.AND, + this.OR, + this.NOT, + this.comment, + this.historyUuid, + this.history, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, + Iterable<_i2.HistoryCommentWhereInput>>? AND; + + final Iterable<_i2.HistoryCommentWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, + Iterable<_i2.HistoryCommentWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? comment; + + final _i1.PrismaUnion<_i2.StringFilter, String>? historyUuid; + + final _i1.PrismaUnion<_i2.HistoryRelationFilter, _i2.HistoryWhereInput>? + history; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'comment': comment, + 'historyUuid': historyUuid, + 'History': history, + }; +} + +class HistoryCommentNullableRelationFilter + implements _i1.JsonConvertible> { + const HistoryCommentNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class HistoryAttachmentWhereInput + implements _i1.JsonConvertible> { + const HistoryAttachmentWhereInput({ + this.AND, + this.OR, + this.NOT, + this.url, + this.name, + this.historyUuid, + this.history, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, + Iterable<_i2.HistoryAttachmentWhereInput>>? AND; + + final Iterable<_i2.HistoryAttachmentWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, + Iterable<_i2.HistoryAttachmentWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? url; + + final _i1.PrismaUnion<_i2.StringFilter, String>? name; + + final _i1.PrismaUnion<_i2.StringFilter, String>? historyUuid; + + final _i1.PrismaUnion<_i2.HistoryRelationFilter, _i2.HistoryWhereInput>? + history; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + 'History': history, + }; +} + +class HistoryAttachmentNullableRelationFilter + implements _i1.JsonConvertible> { + const HistoryAttachmentNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class HistoryWhereInput implements _i1.JsonConvertible> { + const HistoryWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + final _i1.PrismaUnion<_i2.HistoryWhereInput, Iterable<_i2.HistoryWhereInput>>? + AND; + + final Iterable<_i2.HistoryWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryWhereInput, Iterable<_i2.HistoryWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? timestamp; + + final _i1.PrismaUnion<_i2.StringFilter, String>? event; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.HistoryCommentNullableRelationFilter, + _i1.PrismaUnion<_i2.HistoryCommentWhereInput, _i1.PrismaNull>>? comment; + + final _i1.PrismaUnion<_i2.HistoryAttachmentNullableRelationFilter, + _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, _i1.PrismaNull>>? + attachment; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.LeadNullableRelationFilter, + _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>>? lead; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryListRelationFilter + implements _i1.JsonConvertible> { + const HistoryListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.HistoryWhereInput? every; + + final _i2.HistoryWhereInput? some; + + final _i2.HistoryWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class UtenteWhereInput implements _i1.JsonConvertible> { + const UtenteWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion<_i2.UtenteWhereInput, Iterable<_i2.UtenteWhereInput>>? + AND; + + final Iterable<_i2.UtenteWhereInput>? OR; + + final _i1.PrismaUnion<_i2.UtenteWhereInput, Iterable<_i2.UtenteWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? firebaseUid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? email; + + final _i1.PrismaUnion<_i2.EnumRuoloUtenteFilter, _i3.RuoloUtente>? ruolo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? photoUrl; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nomeVisualizzato; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.IngressiListRelationFilter? ingressi; + + final _i2.LeadListRelationFilter? leadsGestiti; + + final _i2.LeadListRelationFilter? leadsAssegnati; + + final _i2.OpportunitaListRelationFilter? opportunitaGestite; + + final _i2.OpportunitaListRelationFilter? opportunitaAssegnate; + + final _i2.OrdineListRelationFilter? ordini; + + final _i2.HistoryListRelationFilter? history; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteListRelationFilter + implements _i1.JsonConvertible> { + const UtenteListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.UtenteWhereInput? every; + + final _i2.UtenteWhereInput? some; + + final _i2.UtenteWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class OpportunitaWhereInput + implements _i1.JsonConvertible> { + const OpportunitaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final _i1.PrismaUnion<_i2.OpportunitaWhereInput, + Iterable<_i2.OpportunitaWhereInput>>? AND; + + final Iterable<_i2.OpportunitaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OpportunitaWhereInput, + Iterable<_i2.OpportunitaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInizio; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataFine; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + final _i2.LeadListRelationFilter? leads; + + final _i2.UtenteListRelationFilter? gestoriLead; + + final _i2.UtenteListRelationFilter? agenti; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaRelationFilter + implements _i1.JsonConvertible> { + const OpportunitaRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.OpportunitaWhereInput? $is; + + final _i2.OpportunitaWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class NestedEnumTipoStatoNullableFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoStatoNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoStato, + _i1.PrismaUnion<_i1.Reference<_i3.TipoStato>, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1 + .PrismaUnion<_i2.NestedEnumTipoStatoNullableFilter, _i1.PrismaNull>>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTipoStatoNullableFilter + implements _i1.JsonConvertible> { + const EnumTipoStatoNullableFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoStato, + _i1.PrismaUnion<_i1.Reference<_i3.TipoStato>, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1 + .PrismaUnion<_i2.NestedEnumTipoStatoNullableFilter, _i1.PrismaNull>>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class StatoOpportunitaWhereInput + implements _i1.JsonConvertible> { + const StatoOpportunitaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaWhereInput, + Iterable<_i2.StatoOpportunitaWhereInput>>? AND; + + final Iterable<_i2.StatoOpportunitaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOpportunitaWhereInput, + Iterable<_i2.StatoOpportunitaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoNullableFilter, + _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>>? tipoStato; + + final _i1 + .PrismaUnion<_i2.IntNullableFilter, _i1.PrismaUnion>? + ordine; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? opportunitaUuid; + + final _i2.LeadListRelationFilter? leads; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class StatoOpportunitaRelationFilter + implements _i1.JsonConvertible> { + const StatoOpportunitaRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.StatoOpportunitaWhereInput? $is; + + final _i2.StatoOpportunitaWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class LeadWhereInput implements _i1.JsonConvertible> { + const LeadWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion<_i2.LeadWhereInput, Iterable<_i2.LeadWhereInput>>? AND; + + final Iterable<_i2.LeadWhereInput>? OR; + + final _i1.PrismaUnion<_i2.LeadWhereInput, Iterable<_i2.LeadWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? opportunitaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? agenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? appuntamenti; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataScadenza; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + final _i1 + .PrismaUnion<_i2.OpportunitaRelationFilter, _i2.OpportunitaWhereInput>? + opportunita; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + final _i1.PrismaUnion<_i2.StatoOpportunitaRelationFilter, + _i2.StatoOpportunitaWhereInput>? statoOpportunita; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? agente; + + final _i2.OrdineListRelationFilter? ordine; + + final _i2.HistoryListRelationFilter? history; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadNullableRelationFilter + implements _i1.JsonConvertible> { + const LeadNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class OrdineWhereInput implements _i1.JsonConvertible> { + const OrdineWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion<_i2.OrdineWhereInput, Iterable<_i2.OrdineWhereInput>>? + AND; + + final Iterable<_i2.OrdineWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OrdineWhereInput, Iterable<_i2.OrdineWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? valore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoOrdineId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i2.ProdottoListRelationFilter? prodotti; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + final _i1.PrismaUnion<_i2.StatoOrdineNullableRelationFilter, + _i1.PrismaUnion<_i2.StatoOrdineWhereInput, _i1.PrismaNull>>? statoOrdine; + + final _i1.PrismaUnion<_i2.LeadNullableRelationFilter, + _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>>? lead; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineListRelationFilter + implements _i1.JsonConvertible> { + const OrdineListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.OrdineWhereInput? every; + + final _i2.OrdineWhereInput? some; + + final _i2.OrdineWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class TipoProdottoWhereInput + implements _i1.JsonConvertible> { + const TipoProdottoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoWhereInput, + Iterable<_i2.TipoProdottoWhereInput>>? AND; + + final Iterable<_i2.TipoProdottoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoProdottoWhereInput, + Iterable<_i2.TipoProdottoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class TipoProdottoRelationFilter + implements _i1.JsonConvertible> { + const TipoProdottoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.TipoProdottoWhereInput? $is; + + final _i2.TipoProdottoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ProdottoWhereInput implements _i1.JsonConvertible> { + const ProdottoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + }); + + final _i1 + .PrismaUnion<_i2.ProdottoWhereInput, Iterable<_i2.ProdottoWhereInput>>? + AND; + + final Iterable<_i2.ProdottoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ProdottoWhereInput, Iterable<_i2.ProdottoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? modello; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? prezzo; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileDal; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileAl; + + final _i1.PrismaUnion<_i2.StringFilter, String>? produttoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoProdottoId; + + final _i1.PrismaUnion<_i2.ProduttoreRelationFilter, _i2.ProduttoreWhereInput>? + produttore; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i1 + .PrismaUnion<_i2.TipoProdottoRelationFilter, _i2.TipoProdottoWhereInput>? + tipoProdotto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoListRelationFilter + implements _i1.JsonConvertible> { + const ProdottoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ProdottoWhereInput? every; + + final _i2.ProdottoWhereInput? some; + + final _i2.ProdottoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class FornitoreWhereInput implements _i1.JsonConvertible> { + const FornitoreWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final _i1 + .PrismaUnion<_i2.FornitoreWhereInput, Iterable<_i2.FornitoreWhereInput>>? + AND; + + final Iterable<_i2.FornitoreWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.FornitoreWhereInput, Iterable<_i2.FornitoreWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.ModuloContrattoListRelationFilter? moduliContratto; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreRelationFilter + implements _i1.JsonConvertible> { + const FornitoreRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.FornitoreWhereInput? $is; + + final _i2.FornitoreWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class TipoPraticaListRelationFilter + implements _i1.JsonConvertible> { + const TipoPraticaListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.TipoPraticaWhereInput? every; + + final _i2.TipoPraticaWhereInput? some; + + final _i2.TipoPraticaWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class FornituraListRelationFilter + implements _i1.JsonConvertible> { + const FornituraListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.FornituraWhereInput? every; + + final _i2.FornituraWhereInput? some; + + final _i2.FornituraWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class StatoPraticaListRelationFilter + implements _i1.JsonConvertible> { + const StatoPraticaListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.StatoPraticaWhereInput? every; + + final _i2.StatoPraticaWhereInput? some; + + final _i2.StatoPraticaWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class StatoContrattoListRelationFilter + implements _i1.JsonConvertible> { + const StatoContrattoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.StatoContrattoWhereInput? every; + + final _i2.StatoContrattoWhereInput? some; + + final _i2.StatoContrattoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class FornituraGasListRelationFilter + implements _i1.JsonConvertible> { + const FornituraGasListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.FornituraGasWhereInput? every; + + final _i2.FornituraGasWhereInput? some; + + final _i2.FornituraGasWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class ClasseMisuratoreGasWhereInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasWhereInput({ + this.AND, + this.OR, + this.NOT, + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, + Iterable<_i2.ClasseMisuratoreGasWhereInput>>? AND; + + final Iterable<_i2.ClasseMisuratoreGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, + Iterable<_i2.ClasseMisuratoreGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataMin; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataNominale; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataMax; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? classe; + + final _i2.FornituraGasListRelationFilter? fornituraGas; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + }; +} + +class ClasseMisuratoreGasNullableRelationFilter + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, _i1.PrismaNull>? + isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ConsumoAnnuoGasWhereInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.fornituraGas, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, + Iterable<_i2.ConsumoAnnuoGasWhereInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, + Iterable<_i2.ConsumoAnnuoGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraGasUuid; + + final _i1 + .PrismaUnion<_i2.FornituraGasRelationFilter, _i2.FornituraGasWhereInput>? + fornituraGas; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + 'fornituraGas': fornituraGas, + }; +} + +class ConsumoAnnuoGasNullableRelationFilter + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class FornituraGasWhereInput + implements _i1.JsonConvertible> { + const FornituraGasWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + }); + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, + Iterable<_i2.FornituraGasWhereInput>>? AND; + + final Iterable<_i2.FornituraGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, + Iterable<_i2.FornituraGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? pdr; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? matricolaContatore; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? remi; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasNullableRelationFilter, + _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, _i1.PrismaNull>>? + classeMisuratore; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasNullableRelationFilter, + _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, _i1.PrismaNull>>? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i1.PrismaUnion<_i2.FornituraRelationFilter, _i2.FornituraWhereInput>? + fornitura; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasRelationFilter + implements _i1.JsonConvertible> { + const FornituraGasRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.FornituraGasWhereInput? $is; + + final _i2.FornituraGasWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ContrattoRelationFilter + implements _i1.JsonConvertible> { + const ContrattoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.ContrattoWhereInput? $is; + + final _i2.ContrattoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class OffertaNullableRelationFilter + implements _i1.JsonConvertible> { + const OffertaNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ContrattoEnelGasWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereInput, + Iterable<_i2.ContrattoEnelGasWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereInput, + Iterable<_i2.ContrattoEnelGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraGasUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1 + .PrismaUnion<_i2.FornituraGasRelationFilter, _i2.FornituraGasWhereInput>? + fornituraGas; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasListRelationFilter + implements _i1.JsonConvertible> { + const ContrattoEnelGasListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ContrattoEnelGasWhereInput? every; + + final _i2.ContrattoEnelGasWhereInput? some; + + final _i2.ContrattoEnelGasWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NestedEnumServizioContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const NestedEnumServizioContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i1.Reference<_i3.ServizioContrattoEnelFibra>>? equals; + + final Iterable<_i3.ServizioContrattoEnelFibra>? $in; + + final Iterable<_i3.ServizioContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.NestedEnumServizioContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumServizioContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const EnumServizioContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i1.Reference<_i3.ServizioContrattoEnelFibra>>? equals; + + final Iterable<_i3.ServizioContrattoEnelFibra>? $in; + + final Iterable<_i3.ServizioContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.NestedEnumServizioContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class NestedEnumTipoContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i1.Reference<_i3.TipoContrattoEnelFibra>>? equals; + + final Iterable<_i3.TipoContrattoEnelFibra>? $in; + + final Iterable<_i3.TipoContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.NestedEnumTipoContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTipoContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const EnumTipoContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i1.Reference<_i3.TipoContrattoEnelFibra>>? equals; + + final Iterable<_i3.TipoContrattoEnelFibra>? $in; + + final Iterable<_i3.TipoContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.NestedEnumTipoContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class NestedEnumTecnologiaContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const NestedEnumTecnologiaContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i1.Reference<_i3.TecnologiaContrattoEnelFibra>>? equals; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? $in; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.NestedEnumTecnologiaContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class EnumTecnologiaContrattoEnelFibraFilter + implements _i1.JsonConvertible> { + const EnumTecnologiaContrattoEnelFibraFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + }); + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i1.Reference<_i3.TecnologiaContrattoEnelFibra>>? equals; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? $in; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.NestedEnumTecnologiaContrattoEnelFibraFilter>? not; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + }; +} + +class ContrattoEnelFibraWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereInput, + Iterable<_i2.ContrattoEnelFibraWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelFibraWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereInput, + Iterable<_i2.ContrattoEnelFibraWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.EnumServizioContrattoEnelFibraFilter, + _i3.ServizioContrattoEnelFibra>? servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTipoContrattoEnelFibraFilter, + _i3.TipoContrattoEnelFibra>? tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTecnologiaContrattoEnelFibraFilter, + _i3.TecnologiaContrattoEnelFibra>? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraListRelationFilter + implements _i1.JsonConvertible> { + const ContrattoEnelFibraListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ContrattoEnelFibraWhereInput? every; + + final _i2.ContrattoEnelFibraWhereInput? some; + + final _i2.ContrattoEnelFibraWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class OffertaWhereInput implements _i1.JsonConvertible> { + const OffertaWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion<_i2.OffertaWhereInput, Iterable<_i2.OffertaWhereInput>>? + AND; + + final Iterable<_i2.OffertaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OffertaWhereInput, Iterable<_i2.OffertaWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataFineOfferta; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInizioOfferta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + final _i1 + .PrismaUnion<_i2.ServizioEwoRelationFilter, _i2.ServizioEwoWhereInput>? + servizioEwo; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i2.OffertaListRelationFilter? offerteIncluse; + + final _i2.OffertaListRelationFilter? inclusaInOfferte; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaListRelationFilter + implements _i1.JsonConvertible> { + const OffertaListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.OffertaWhereInput? every; + + final _i2.OffertaWhereInput? some; + + final _i2.OffertaWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class ServizioEwoWhereInput + implements _i1.JsonConvertible> { + const ServizioEwoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoWhereInput, + Iterable<_i2.ServizioEwoWhereInput>>? AND; + + final Iterable<_i2.ServizioEwoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereInput, + Iterable<_i2.ServizioEwoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoServizioEwoFilter, _i3.TipoServizioEwo>? + tipoServizioEwo; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? icona; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i2.TipoPraticaListRelationFilter? tipiPratiche; + + final _i2.FornituraListRelationFilter? forniture; + + final _i2.StatoPraticaListRelationFilter? statiPossibiliPratiche; + + final _i2.StatoContrattoListRelationFilter? statiPossibiliContratti; + + final _i2.OffertaListRelationFilter? offerte; + + final _i2.ModuloContrattoListRelationFilter? moduliContratto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoRelationFilter + implements _i1.JsonConvertible> { + const ServizioEwoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.ServizioEwoWhereInput? $is; + + final _i2.ServizioEwoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class FornituraLuceNullableRelationFilter + implements _i1.JsonConvertible> { + const FornituraLuceNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class FornituraGasNullableRelationFilter + implements _i1.JsonConvertible> { + const FornituraGasNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class FornituraWhereInput implements _i1.JsonConvertible> { + const FornituraWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1 + .PrismaUnion<_i2.FornituraWhereInput, Iterable<_i2.FornituraWhereInput>>? + AND; + + final Iterable<_i2.FornituraWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.FornituraWhereInput, Iterable<_i2.FornituraWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + final _i1.PrismaUnion<_i2.DomicilioRelationFilter, _i2.DomicilioWhereInput>? + domicilio; + + final _i1 + .PrismaUnion<_i2.ServizioEwoRelationFilter, _i2.ServizioEwoWhereInput>? + servizioEwo; + + final _i1.PrismaUnion<_i2.FornituraLuceNullableRelationFilter, + _i1.PrismaUnion<_i2.FornituraLuceWhereInput, _i1.PrismaNull>>? + fornituraLuce; + + final _i1.PrismaUnion<_i2.FornituraGasNullableRelationFilter, + _i1.PrismaUnion<_i2.FornituraGasWhereInput, _i1.PrismaNull>>? + fornituraGas; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraRelationFilter + implements _i1.JsonConvertible> { + const FornituraRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.FornituraWhereInput? $is; + + final _i2.FornituraWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class FornituraLuceWhereInput + implements _i1.JsonConvertible> { + const FornituraLuceWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, + Iterable<_i2.FornituraLuceWhereInput>>? AND; + + final Iterable<_i2.FornituraLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, + Iterable<_i2.FornituraLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? pod; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraUuid; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? potenza; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? tensione; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceNullableRelationFilter, + _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, _i1.PrismaNull>>? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i1.PrismaUnion<_i2.FornituraRelationFilter, _i2.FornituraWhereInput>? + fornitura; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceRelationFilter + implements _i1.JsonConvertible> { + const FornituraLuceRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.FornituraLuceWhereInput? $is; + + final _i2.FornituraLuceWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ContrattoEnelLuceWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereInput, + Iterable<_i2.ContrattoEnelLuceWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereInput, + Iterable<_i2.ContrattoEnelLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.FornituraLuceRelationFilter, + _i2.FornituraLuceWhereInput>? fornituraLuce; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceListRelationFilter + implements _i1.JsonConvertible> { + const ContrattoEnelLuceListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ContrattoEnelLuceWhereInput? every; + + final _i2.ContrattoEnelLuceWhereInput? some; + + final _i2.ContrattoEnelLuceWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class PraticaNullableRelationFilter + implements _i1.JsonConvertible> { + const PraticaNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.PraticaWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.PraticaWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ModuloContrattoNullableRelationFilter + implements _i1.JsonConvertible> { + const ModuloContrattoNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ContrattoWhereInput implements _i1.JsonConvertible> { + const ContrattoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1 + .PrismaUnion<_i2.ContrattoWhereInput, Iterable<_i2.ContrattoWhereInput>>? + AND; + + final Iterable<_i2.ContrattoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ContrattoWhereInput, Iterable<_i2.ContrattoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAttivazione; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.BoolNullableFilter, + _i1.PrismaUnion>? trend; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingGruppoEnel; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? profilazioneEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? bollettaWeb; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? rid; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataCessazione; + + final _i1 + .PrismaUnion<_i2.IntNullableFilter, _i1.PrismaUnion>? + mesiDurata; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? praticaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? moduloContrattoId; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.PraticaNullableRelationFilter, + _i1.PrismaUnion<_i2.PraticaWhereInput, _i1.PrismaNull>>? pratica; + + final _i1.PrismaUnion<_i2.ModuloContrattoNullableRelationFilter, + _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, _i1.PrismaNull>>? modulo; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoListRelationFilter + implements _i1.JsonConvertible> { + const ContrattoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ContrattoWhereInput? every; + + final _i2.ContrattoWhereInput? some; + + final _i2.ContrattoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class StatoContrattoWhereInput + implements _i1.JsonConvertible> { + const StatoContrattoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoWhereInput, + Iterable<_i2.StatoContrattoWhereInput>>? AND; + + final Iterable<_i2.StatoContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereInput, + Iterable<_i2.StatoContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoRelationFilter + implements _i1.JsonConvertible> { + const StatoContrattoRelationFilter({ + this.$is, + this.isNot, + }); + + final _i2.StatoContrattoWhereInput? $is; + + final _i2.StatoContrattoWhereInput? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class ContrattoEnelXAssicurazioneWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.DomicilioRelationFilter, _i2.DomicilioWhereInput>? + domicilio; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneListRelationFilter + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereInput? every; + + final _i2.ContrattoEnelXAssicurazioneWhereInput? some; + + final _i2.ContrattoEnelXAssicurazioneWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class DomicilioWhereInput implements _i1.JsonConvertible> { + const DomicilioWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1 + .PrismaUnion<_i2.DomicilioWhereInput, Iterable<_i2.DomicilioWhereInput>>? + AND; + + final Iterable<_i2.DomicilioWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.DomicilioWhereInput, Iterable<_i2.DomicilioWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? numeroCivico; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? citta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? cap; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? provincia; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i2.FornituraListRelationFilter? forniture; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i2.LeadListRelationFilter? leads; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioListRelationFilter + implements _i1.JsonConvertible> { + const DomicilioListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.DomicilioWhereInput? every; + + final _i2.DomicilioWhereInput? some; + + final _i2.DomicilioWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class IndirizzoEmailListRelationFilter + implements _i1.JsonConvertible> { + const IndirizzoEmailListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.IndirizzoEmailWhereInput? every; + + final _i2.IndirizzoEmailWhereInput? some; + + final _i2.IndirizzoEmailWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class NumeroTelefonoListRelationFilter + implements _i1.JsonConvertible> { + const NumeroTelefonoListRelationFilter({ + this.every, + this.some, + this.none, + }); + + final _i2.NumeroTelefonoWhereInput? every; + + final _i2.NumeroTelefonoWhereInput? some; + + final _i2.NumeroTelefonoWhereInput? none; + + @override + Map toJson() => { + 'every': every, + 'some': some, + 'none': none, + }; +} + +class PrivacyWhereInput implements _i1.JsonConvertible> { + const PrivacyWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.soggetto, + }); + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, Iterable<_i2.PrivacyWhereInput>>? + AND; + + final Iterable<_i2.PrivacyWhereInput>? OR; + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, Iterable<_i2.PrivacyWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? trattamento; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? comunicazione; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? profilazione; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + }; +} + +class PrivacyNullableRelationFilter + implements _i1.JsonConvertible> { + const PrivacyNullableRelationFilter({ + this.$is, + this.isNot, + }); + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, _i1.PrismaNull>? $is; + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, _i1.PrismaNull>? isNot; + + @override + Map toJson() => { + 'is': $is, + 'isNot': isNot, + }; +} + +class SoggettoWhereInput implements _i1.JsonConvertible> { + const SoggettoWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1 + .PrismaUnion<_i2.SoggettoWhereInput, Iterable<_i2.SoggettoWhereInput>>? + AND; + + final Iterable<_i2.SoggettoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.SoggettoWhereInput, Iterable<_i2.SoggettoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? ragioneSociale; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? iban; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? tipo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? codiceFiscale; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? note; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, _i1.PrismaNull>>? + soggettoBusinessInfo; + + final _i2.DomicilioListRelationFilter? domicili; + + final _i2.PraticaListRelationFilter? praticheIntestate; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.IndirizzoEmailListRelationFilter? indirizziEmail; + + final _i2.NumeroTelefonoListRelationFilter? numeriTelefono; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozioPreferito; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i2.LeadListRelationFilter? leads; + + final _i1.PrismaUnion<_i2.PrivacyNullableRelationFilter, + _i1.PrismaUnion<_i2.PrivacyWhereInput, _i1.PrismaNull>>? privacy; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoWhereUniqueInput + implements _i1.JsonConvertible> { + const SoggettoWhereUniqueInput({ + this.uuid, + this.codiceFiscale, + this.AND, + this.OR, + this.NOT, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String? codiceFiscale; + + final _i1 + .PrismaUnion<_i2.SoggettoWhereInput, Iterable<_i2.SoggettoWhereInput>>? + AND; + + final Iterable<_i2.SoggettoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.SoggettoWhereInput, Iterable<_i2.SoggettoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? ragioneSociale; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? iban; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? tipo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? note; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, _i1.PrismaNull>>? + soggettoBusinessInfo; + + final _i2.DomicilioListRelationFilter? domicili; + + final _i2.PraticaListRelationFilter? praticheIntestate; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.IndirizzoEmailListRelationFilter? indirizziEmail; + + final _i2.NumeroTelefonoListRelationFilter? numeriTelefono; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozioPreferito; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i2.LeadListRelationFilter? leads; + + final _i1.PrismaUnion<_i2.PrivacyNullableRelationFilter, + _i1.PrismaUnion<_i2.PrivacyWhereInput, _i1.PrismaNull>>? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'codiceFiscale': codiceFiscale, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class NumeroTelefonoSoggettoArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoSoggettoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class NumeroTelefonoLegaleRappresentateArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoLegaleRappresentateArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i2.LegaleRappresentanteSelect? select; + + final _i2.LegaleRappresentanteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ReferenteNumeroTelefonoArgs + implements _i1.JsonConvertible> { + const ReferenteNumeroTelefonoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NumeroTelefonoWhereInput? where; + + final _i2.NumeroTelefonoSelect? select; + + final _i2.NumeroTelefonoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class IndirizzoEmailSoggettoArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailSoggettoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class IndirizzoEmailReferenteArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailReferenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ReferenteWhereInput? where; + + final _i2.ReferenteSelect? select; + + final _i2.ReferenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class IndirizzoEmailLegaleRappresentanteArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailLegaleRappresentanteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i2.LegaleRappresentanteSelect? select; + + final _i2.LegaleRappresentanteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class IndirizzoEmailInclude + implements _i1.JsonConvertible> { + const IndirizzoEmailInclude({ + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? referente; + + final _i1.PrismaUnion? + legaleRappresentante; + + @override + Map toJson() => { + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class ReferenteIndirizzoEmailArgs + implements _i1.JsonConvertible> { + const ReferenteIndirizzoEmailArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.IndirizzoEmailWhereInput? where; + + final _i2.IndirizzoEmailSelect? select; + + final _i2.IndirizzoEmailInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ReferenteSoggettoBusinessInfoArgs + implements _i1.JsonConvertible> { + const ReferenteSoggettoBusinessInfoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoBusinessInfoSelect? select; + + final _i2.SoggettoBusinessInfoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ReferenteInclude implements _i1.JsonConvertible> { + const ReferenteInclude({ + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? numeroTelefono; + + final _i1.PrismaUnion? indirizzoEmail; + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class IndirizzoEmailSelect + implements _i1.JsonConvertible> { + const IndirizzoEmailSelect({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final bool? uuid; + + final bool? indirizzo; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentanteUuid; + + final bool? referenteUuid; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? referente; + + final _i1.PrismaUnion? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class ReferenteSelect implements _i1.JsonConvertible> { + const ReferenteSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion? numeroTelefono; + + final _i1.PrismaUnion? indirizzoEmail; + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class NumeroTelefonoReferenteArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoReferenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ReferenteWhereInput? where; + + final _i2.ReferenteSelect? select; + + final _i2.ReferenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class NumeroTelefonoInclude + implements _i1.JsonConvertible> { + const NumeroTelefonoInclude({ + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? + legaleRappresentate; + + final _i1.PrismaUnion? referente; + + @override + Map toJson() => { + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class LegaleRappresentanteNumeroTelefonoArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteNumeroTelefonoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NumeroTelefonoWhereInput? where; + + final _i2.NumeroTelefonoSelect? select; + + final _i2.NumeroTelefonoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LegaleRappresentanteIndirizzoEmailArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteIndirizzoEmailArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.IndirizzoEmailWhereInput? where; + + final _i2.IndirizzoEmailSelect? select; + + final _i2.IndirizzoEmailInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LegaleRappresentanteSoggettoBusinessInfoArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteSoggettoBusinessInfoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoBusinessInfoSelect? select; + + final _i2.SoggettoBusinessInfoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class LegaleRappresentanteInclude + implements _i1.JsonConvertible> { + const LegaleRappresentanteInclude({ + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? + numeroTelefono; + + final _i1.PrismaUnion? + indirizzoEmail; + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class SoggettoBusinessInfoLegaleRappresentanteArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoLegaleRappresentanteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i2.LegaleRappresentanteSelect? select; + + final _i2.LegaleRappresentanteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class SoggettoBusinessInfoReferenteArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoReferenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ReferenteWhereInput? where; + + final _i2.ReferenteSelect? select; + + final _i2.ReferenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class SoggettoBusinessInfoSoggettoArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoSoggettoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class SoggettoBusinessInfoInclude + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoInclude({ + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + final _i1.PrismaUnion? + legaleRappresentante; + + final _i1.PrismaUnion? referente; + + final _i1.PrismaUnion? soggetto; + + @override + Map toJson() => { + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoSoggettoBusinessInfoArgs + implements _i1.JsonConvertible> { + const SoggettoSoggettoBusinessInfoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoBusinessInfoWhereInput? where; + + final _i2.SoggettoBusinessInfoSelect? select; + + final _i2.SoggettoBusinessInfoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class DomicilioSoggettoArgs + implements _i1.JsonConvertible> { + const DomicilioSoggettoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelLuceStatoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceStatoArgs({ + this.select, + this.include, + }); + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ConsumoAnnuoLuceFornituraLuceArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceFornituraLuceArgs({ + this.select, + this.include, + }); + + final _i2.FornituraLuceSelect? select; + + final _i2.FornituraLuceInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ConsumoAnnuoLuceInclude + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceInclude({this.fornituraLuce}); + + final _i1.PrismaUnion? + fornituraLuce; + + @override + Map toJson() => {'fornituraLuce': fornituraLuce}; +} + +class FornituraLuceConsumoAnnuoLuceArgs + implements _i1.JsonConvertible> { + const FornituraLuceConsumoAnnuoLuceArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ConsumoAnnuoLuceWhereInput? where; + + final _i2.ConsumoAnnuoLuceSelect? select; + + final _i2.ConsumoAnnuoLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +enum SortOrder implements _i1.PrismaEnum { + asc._('asc'), + desc._('desc'); + + const SortOrder._(this.name); + + @override + final String name; +} + +enum NullsOrder implements _i1.PrismaEnum { + first._('first'), + last._('last'); + + const NullsOrder._(this.name); + + @override + final String name; +} + +class SortOrderInput implements _i1.JsonConvertible> { + const SortOrderInput({ + required this.sort, + this.nulls, + }); + + final _i2.SortOrder sort; + + final _i2.NullsOrder? nulls; + + @override + Map toJson() => { + 'sort': sort, + 'nulls': nulls, + }; +} + +class ContrattoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ContrattoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ServizioEwoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ServizioEwoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ContrattoEnelLuceOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ContrattoEnelGasOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ContrattoEnelFibraOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ContrattoEnelXAssicurazioneOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum StatoContrattoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const StatoContrattoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class StatoContrattoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const StatoContrattoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoOrderByRelevanceFieldEnum, + Iterable<_i2.StatoContrattoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class StatoContrattoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const StatoContrattoOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ContrattoOrderByRelationAggregateInput? contratti; + + final _i2.ServizioEwoOrderByRelationAggregateInput? serviziEwo; + + final _i2.ContrattoEnelLuceOrderByRelationAggregateInput? contrattiEnelLuce; + + final _i2.ContrattoEnelGasOrderByRelationAggregateInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraOrderByRelationAggregateInput? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneOrderByRelationAggregateInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + '_relevance': $relevance, + }; +} + +enum ConsumoAnnuoLuceOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + fornituraLuceUuid._('fornituraLuceUuid'); + + const ConsumoAnnuoLuceOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ConsumoAnnuoLuceOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceOrderByRelevanceFieldEnum, + Iterable<_i2.ConsumoAnnuoLuceOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.fornituraLuce, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.FornituraLuceOrderByWithRelationAndSearchRelevanceInput? + fornituraLuce; + + final _i2.ConsumoAnnuoLuceOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + 'fornituraLuce': fornituraLuce, + '_relevance': $relevance, + }; +} + +enum IndirizzoEmailOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + indirizzo._('indirizzo'), + etichetta._('etichetta'), + soggettoUuid._('soggettoUuid'), + legaleRappresentanteUuid._('legaleRappresentanteUuid'), + referenteUuid._('referenteUuid'); + + const IndirizzoEmailOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class IndirizzoEmailOrderByRelevanceInput + implements _i1.JsonConvertible> { + const IndirizzoEmailOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailOrderByRelevanceFieldEnum, + Iterable<_i2.IndirizzoEmailOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.soggetto, + this.referente, + this.legaleRappresentante, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? indirizzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + legaleRappresentanteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? referenteUuid; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.ReferenteOrderByWithRelationAndSearchRelevanceInput? referente; + + final _i2.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput? + legaleRappresentante; + + final _i2.IndirizzoEmailOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + '_relevance': $relevance, + }; +} + +enum ReferenteOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + nome._('nome'), + cognome._('cognome'), + soggettoBusinessInfoUuid._('soggettoBusinessInfoUuid'); + + const ReferenteOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ReferenteOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ReferenteOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ReferenteOrderByRelevanceFieldEnum, + Iterable<_i2.ReferenteOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ReferenteOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ReferenteOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput? + numeroTelefono; + + final _i2.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput? + indirizzoEmail; + + final _i2.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput? + soggettoBusinessInfo; + + final _i2.ReferenteOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + '_relevance': $relevance, + }; +} + +enum NumeroTelefonoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + numero._('numero'), + etichetta._('etichetta'), + soggettoUuid._('soggettoUuid'), + legaleRappresentateUuid._('legaleRappresentateUuid'), + referenteUuid._('referenteUuid'); + + const NumeroTelefonoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class NumeroTelefonoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const NumeroTelefonoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoOrderByRelevanceFieldEnum, + Iterable<_i2.NumeroTelefonoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.soggetto, + this.legaleRappresentate, + this.referente, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? numero; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + legaleRappresentateUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? referenteUuid; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput? + legaleRappresentate; + + final _i2.ReferenteOrderByWithRelationAndSearchRelevanceInput? referente; + + final _i2.NumeroTelefonoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + '_relevance': $relevance, + }; +} + +enum LegaleRappresentanteOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + nome._('nome'), + cognome._('cognome'), + soggettoBusinessInfoUuid._('soggettoBusinessInfoUuid'); + + const LegaleRappresentanteOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class LegaleRappresentanteOrderByRelevanceInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.LegaleRappresentanteOrderByRelevanceFieldEnum, + Iterable<_i2.LegaleRappresentanteOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput? + numeroTelefono; + + final _i2.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput? + indirizzoEmail; + + final _i2.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput? + soggettoBusinessInfo; + + final _i2.LegaleRappresentanteOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + '_relevance': $relevance, + }; +} + +enum SoggettoBusinessInfoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + rea._('rea'), + partitaIVA._('partitaIVA'), + sdi._('sdi'), + soggettoUuid._('soggettoUuid'); + + const SoggettoBusinessInfoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class SoggettoBusinessInfoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoOrderByRelevanceFieldEnum, + Iterable<_i2.SoggettoBusinessInfoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + this.referente, + this.soggetto, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? rea; + + final _i2.SortOrder? partitaIVA; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? sdi; + + final _i2.SortOrder? soggettoUuid; + + final _i2.LegaleRappresentanteOrderByWithRelationAndSearchRelevanceInput? + legaleRappresentante; + + final _i2.ReferenteOrderByWithRelationAndSearchRelevanceInput? referente; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.SoggettoBusinessInfoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + '_relevance': $relevance, + }; +} + +class DomicilioOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const DomicilioOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class PraticaOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const PraticaOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class IndirizzoEmailOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class NumeroTelefonoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class UtenteOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const UtenteOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class SoggettoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const SoggettoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class NegozioOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const NegozioOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum ZonaNegozioOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const ZonaNegozioOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ZonaNegozioOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ZonaNegozioOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioOrderByRelevanceFieldEnum, + Iterable<_i2.ZonaNegozioOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ZonaNegozioOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ZonaNegozioOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.negozi, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.NegozioOrderByRelationAggregateInput? negozi; + + final _i2.ZonaNegozioOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + '_relevance': $relevance, + }; +} + +class IngressiOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const IngressiOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class LeadOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const LeadOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class OrdineOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const OrdineOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum NegozioOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + codice._('codice'), + nome._('nome'), + zonaNegozioId._('zonaNegozioId'); + + const NegozioOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class NegozioOrderByRelevanceInput + implements _i1.JsonConvertible> { + const NegozioOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.NegozioOrderByRelevanceFieldEnum, + Iterable<_i2.NegozioOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class NegozioOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const NegozioOrderByWithRelationAndSearchRelevanceInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + this.$relevance, + }); + + final _i2.SortOrder? codice; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? zonaNegozioId; + + final _i2.PraticaOrderByRelationAggregateInput? pratiche; + + final _i2.UtenteOrderByRelationAggregateInput? utenti; + + final _i2.ContrattoOrderByRelationAggregateInput? contratti; + + final _i2.SoggettoOrderByRelationAggregateInput? soggetti; + + final _i2.ZonaNegozioOrderByWithRelationAndSearchRelevanceInput? zonaNegozio; + + final _i2.IngressiOrderByRelationAggregateInput? ingressi; + + final _i2.LeadOrderByRelationAggregateInput? leads; + + final _i2.OrdineOrderByRelationAggregateInput? ordine; + + final _i2.NegozioOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + '_relevance': $relevance, + }; +} + +enum PrivacyOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + soggettoUuid._('soggettoUuid'); + + const PrivacyOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class PrivacyOrderByRelevanceInput + implements _i1.JsonConvertible> { + const PrivacyOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.PrivacyOrderByRelevanceFieldEnum, + Iterable<_i2.PrivacyOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class PrivacyOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const PrivacyOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.soggetto, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? trattamento; + + final _i2.SortOrder? comunicazione; + + final _i2.SortOrder? profilazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.PrivacyOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + '_relevance': $relevance, + }; +} + +enum SoggettoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + ragioneSociale._('ragioneSociale'), + iban._('iban'), + negozioPreferitoUuid._('negozioPreferitoUuid'), + codiceFiscale._('codiceFiscale'), + note._('note'); + + const SoggettoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class SoggettoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const SoggettoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.SoggettoOrderByRelevanceFieldEnum, + Iterable<_i2.SoggettoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class SoggettoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const SoggettoOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? ragioneSociale; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? iban; + + final _i2.SortOrder? tipo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? codiceFiscale; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? note; + + final _i2.SoggettoBusinessInfoOrderByWithRelationAndSearchRelevanceInput? + soggettoBusinessInfo; + + final _i2.DomicilioOrderByRelationAggregateInput? domicili; + + final _i2.PraticaOrderByRelationAggregateInput? praticheIntestate; + + final _i2.ContrattoOrderByRelationAggregateInput? contratti; + + final _i2.IndirizzoEmailOrderByRelationAggregateInput? indirizziEmail; + + final _i2.NumeroTelefonoOrderByRelationAggregateInput? numeriTelefono; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozioPreferito; + + final _i2.OrdineOrderByRelationAggregateInput? prodottiOrdinati; + + final _i2.LeadOrderByRelationAggregateInput? leads; + + final _i2.PrivacyOrderByWithRelationAndSearchRelevanceInput? privacy; + + final _i2.SoggettoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + '_relevance': $relevance, + }; +} + +class FornituraOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const FornituraOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum DomicilioOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + etichetta._('etichetta'), + indirizzo._('indirizzo'), + numeroCivico._('numeroCivico'), + citta._('citta'), + cap._('cap'), + provincia._('provincia'), + soggettoUuid._('soggettoUuid'); + + const DomicilioOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class DomicilioOrderByRelevanceInput + implements _i1.JsonConvertible> { + const DomicilioOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.DomicilioOrderByRelevanceFieldEnum, + Iterable<_i2.DomicilioOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class DomicilioOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const DomicilioOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? indirizzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? numeroCivico; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? citta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? cap; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? provincia; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneOrderByRelationAggregateInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraOrderByRelationAggregateInput? forniture; + + final _i2.ContrattoEnelFibraOrderByRelationAggregateInput? contrattiEnelFibra; + + final _i2.OrdineOrderByRelationAggregateInput? prodottiOrdinati; + + final _i2.LeadOrderByRelationAggregateInput? leads; + + final _i2.DomicilioOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + '_relevance': $relevance, + }; +} + +class ModuloContrattoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ModuloContrattoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class ProdottoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const ProdottoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum FornitoreOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const FornitoreOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class FornitoreOrderByRelevanceInput + implements _i1.JsonConvertible> { + const FornitoreOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.FornitoreOrderByRelevanceFieldEnum, + Iterable<_i2.FornitoreOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class FornitoreOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const FornitoreOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ServizioEwoOrderByRelationAggregateInput? serviziEwo; + + final _i2.ModuloContrattoOrderByRelationAggregateInput? moduliContratto; + + final _i2.ProdottoOrderByRelationAggregateInput? prodotti; + + final _i2.FornitoreOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + '_relevance': $relevance, + }; +} + +class TipoPraticaOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const TipoPraticaOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class StatoPraticaOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const StatoPraticaOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class StatoContrattoOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const StatoContrattoOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class OffertaOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const OffertaOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum ServizioEwoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'), + fornitoreId._('fornitoreId'), + colore._('colore'), + icona._('icona'); + + const ServizioEwoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ServizioEwoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ServizioEwoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoOrderByRelevanceFieldEnum, + Iterable<_i2.ServizioEwoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ServizioEwoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ServizioEwoOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoServizioEwo; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? icona; + + final _i2.FornitoreOrderByWithRelationAndSearchRelevanceInput? fornitore; + + final _i2.TipoPraticaOrderByRelationAggregateInput? tipiPratiche; + + final _i2.FornituraOrderByRelationAggregateInput? forniture; + + final _i2.StatoPraticaOrderByRelationAggregateInput? statiPossibiliPratiche; + + final _i2.StatoContrattoOrderByRelationAggregateInput? + statiPossibiliContratti; + + final _i2.OffertaOrderByRelationAggregateInput? offerte; + + final _i2.ModuloContrattoOrderByRelationAggregateInput? moduliContratto; + + final _i2.ServizioEwoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + '_relevance': $relevance, + }; +} + +class FornituraGasOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const FornituraGasOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum ClasseMisuratoreGasOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + classe._('classe'); + + const ClasseMisuratoreGasOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ClasseMisuratoreGasOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasOrderByRelevanceFieldEnum, + Iterable<_i2.ClasseMisuratoreGasOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + this.$relevance, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + final _i2.SortOrder? id; + + final _i2.SortOrder? classe; + + final _i2.FornituraGasOrderByRelationAggregateInput? fornituraGas; + + final _i2.ClasseMisuratoreGasOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + '_relevance': $relevance, + }; +} + +enum ConsumoAnnuoGasOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + fornituraGasUuid._('fornituraGasUuid'); + + const ConsumoAnnuoGasOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ConsumoAnnuoGasOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasOrderByRelevanceFieldEnum, + Iterable<_i2.ConsumoAnnuoGasOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.fornituraGas, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.FornituraGasOrderByWithRelationAndSearchRelevanceInput? + fornituraGas; + + final _i2.ConsumoAnnuoGasOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + 'fornituraGas': fornituraGas, + '_relevance': $relevance, + }; +} + +enum FornituraGasOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + pdr._('pdr'), + fornituraUuid._('fornituraUuid'), + classeMisuratoreGasId._('classeMisuratoreGasId'), + matricolaContatore._('matricolaContatore'), + remi._('remi'); + + const FornituraGasOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class FornituraGasOrderByRelevanceInput + implements _i1.JsonConvertible> { + const FornituraGasOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.FornituraGasOrderByRelevanceFieldEnum, + Iterable<_i2.FornituraGasOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class FornituraGasOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const FornituraGasOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pdr; + + final _i2.SortOrder? fornituraUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? matricolaContatore; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? remi; + + final _i2.ClasseMisuratoreGasOrderByWithRelationAndSearchRelevanceInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasOrderByWithRelationAndSearchRelevanceInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasOrderByRelationAggregateInput? contrattiEnelGas; + + final _i2.FornituraOrderByWithRelationAndSearchRelevanceInput? fornitura; + + final _i2.FornituraGasOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + '_relevance': $relevance, + }; +} + +enum FornituraOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + etichetta._('etichetta'), + domicilioUuid._('domicilioUuid'), + servizioEwoId._('servizioEwoId'); + + const FornituraOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class FornituraOrderByRelevanceInput + implements _i1.JsonConvertible> { + const FornituraOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.FornituraOrderByRelevanceFieldEnum, + Iterable<_i2.FornituraOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class FornituraOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const FornituraOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? servizioEwoId; + + final _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput? domicilio; + + final _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput? servizioEwo; + + final _i2.FornituraLuceOrderByWithRelationAndSearchRelevanceInput? + fornituraLuce; + + final _i2.FornituraGasOrderByWithRelationAndSearchRelevanceInput? + fornituraGas; + + final _i2.FornituraOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + '_relevance': $relevance, + }; +} + +enum FornituraLuceOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + pod._('pod'), + fornituraUuid._('fornituraUuid'); + + const FornituraLuceOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class FornituraLuceOrderByRelevanceInput + implements _i1.JsonConvertible> { + const FornituraLuceOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceOrderByRelevanceFieldEnum, + Iterable<_i2.FornituraLuceOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class FornituraLuceOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const FornituraLuceOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pod; + + final _i2.SortOrder? fornituraUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? potenza; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? tensione; + + final _i2.ConsumoAnnuoLuceOrderByWithRelationAndSearchRelevanceInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceOrderByRelationAggregateInput? contrattiEnelLuce; + + final _i2.FornituraOrderByWithRelationAndSearchRelevanceInput? fornitura; + + final _i2.FornituraLuceOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + '_relevance': $relevance, + }; +} + +class OpportunitaOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const OpportunitaOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +class HistoryOrderByRelationAggregateInput + implements _i1.JsonConvertible> { + const HistoryOrderByRelationAggregateInput({this.$count}); + + final _i2.SortOrder? $count; + + @override + Map toJson() => {'_count': $count}; +} + +enum UtenteOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + firebaseUid._('firebaseUid'), + email._('email'), + photoUrl._('photoUrl'), + negozioCodice._('negozioCodice'), + nomeVisualizzato._('nomeVisualizzato'); + + const UtenteOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class UtenteOrderByRelevanceInput + implements _i1.JsonConvertible> { + const UtenteOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.UtenteOrderByRelevanceFieldEnum, + Iterable<_i2.UtenteOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class UtenteOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const UtenteOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? firebaseUid; + + final _i2.SortOrder? email; + + final _i2.SortOrder? ruolo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? photoUrl; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i2.SortOrder? nomeVisualizzato; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.ContrattoOrderByRelationAggregateInput? contratti; + + final _i2.PraticaOrderByRelationAggregateInput? pratiche; + + final _i2.IngressiOrderByRelationAggregateInput? ingressi; + + final _i2.LeadOrderByRelationAggregateInput? leadsGestiti; + + final _i2.LeadOrderByRelationAggregateInput? leadsAssegnati; + + final _i2.OpportunitaOrderByRelationAggregateInput? opportunitaGestite; + + final _i2.OpportunitaOrderByRelationAggregateInput? opportunitaAssegnate; + + final _i2.OrdineOrderByRelationAggregateInput? ordini; + + final _i2.HistoryOrderByRelationAggregateInput? history; + + final _i2.UtenteOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + '_relevance': $relevance, + }; +} + +enum TipoPraticaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const TipoPraticaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class TipoPraticaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const TipoPraticaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaOrderByRelevanceFieldEnum, + Iterable<_i2.TipoPraticaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class TipoPraticaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const TipoPraticaOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ServizioEwoOrderByRelationAggregateInput? serviziEwo; + + final _i2.PraticaOrderByRelationAggregateInput? pratiche; + + final _i2.TipoPraticaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + '_relevance': $relevance, + }; +} + +enum StatoPraticaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const StatoPraticaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class StatoPraticaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const StatoPraticaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaOrderByRelevanceFieldEnum, + Iterable<_i2.StatoPraticaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class StatoPraticaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const StatoPraticaOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.PraticaOrderByRelationAggregateInput? pratiche; + + final _i2.ServizioEwoOrderByRelationAggregateInput? serviziEwo; + + final _i2.StatoPraticaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + '_relevance': $relevance, + }; +} + +enum PraticaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + codice._('codice'), + tipoPraticaId._('tipoPraticaId'), + soggettoUuid._('soggettoUuid'), + utenteUuid._('utenteUuid'), + negozioCodice._('negozioCodice'), + statoPraticaId._('statoPraticaId'); + + const PraticaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class PraticaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const PraticaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.PraticaOrderByRelevanceFieldEnum, + Iterable<_i2.PraticaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class PraticaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const PraticaOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? tipoPraticaId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? statoPraticaId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + ultimoAggiornamentoStato; + + final _i2.TipoPraticaOrderByWithRelationAndSearchRelevanceInput? tipoPratica; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.StatoPraticaOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.ContrattoOrderByRelationAggregateInput? contratto; + + final _i2.PraticaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + '_relevance': $relevance, + }; +} + +enum TipoModuloContrattoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const TipoModuloContrattoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class TipoModuloContrattoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.TipoModuloContrattoOrderByRelevanceFieldEnum, + Iterable<_i2.TipoModuloContrattoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? numeroOfferteCollegabili; + + final _i2.ModuloContrattoOrderByRelationAggregateInput? moduloContratto; + + final _i2.TipoModuloContrattoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + '_relevance': $relevance, + }; +} + +enum ModuloContrattoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'), + fornitoreId._('fornitoreId'), + tipoModuloContrattoId._('tipoModuloContrattoId'); + + const ModuloContrattoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ModuloContrattoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ModuloContrattoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoOrderByRelevanceFieldEnum, + Iterable<_i2.ModuloContrattoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ModuloContrattoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ModuloContrattoOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? clienteTarget; + + final _i2.SortOrder? canale; + + final _i2.SortOrder? tipoModuloContrattoId; + + final _i2.ServizioEwoOrderByRelationAggregateInput? serviziEwoCollegabili; + + final _i2.ContrattoOrderByRelationAggregateInput? contratti; + + final _i2.FornitoreOrderByWithRelationAndSearchRelevanceInput? fornitore; + + final _i2.TipoModuloContrattoOrderByWithRelationAndSearchRelevanceInput? + tipoModulo; + + final _i2.ModuloContrattoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + '_relevance': $relevance, + }; +} + +enum ContrattoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + codice._('codice'), + nota._('nota'), + offertaUuid._('offertaUuid'), + statoContrattoId._('statoContrattoId'), + soggettoUuid._('soggettoUuid'), + utenteUuid._('utenteUuid'), + negozioCodice._('negozioCodice'), + praticaUuid._('praticaUuid'), + moduloContrattoId._('moduloContrattoId'); + + const ContrattoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ContrattoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ContrattoOrderByRelevanceFieldEnum, + Iterable<_i2.ContrattoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ContrattoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataAttivazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? trend; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? nota; + + final _i2.SortOrder? marketingEnelEnergia; + + final _i2.SortOrder? marketingGruppoEnel; + + final _i2.SortOrder? profilazioneEnelEnergia; + + final _i2.SortOrder? bollettaWeb; + + final _i2.SortOrder? rid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataCessazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? mesiDurata; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.SortOrder? statoContrattoId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? praticaUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? moduloContrattoId; + + final _i2.ContrattoEnelLuceOrderByRelationAggregateInput? contrattiEnelLuce; + + final _i2.ContrattoEnelGasOrderByRelationAggregateInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraOrderByRelationAggregateInput? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneOrderByRelationAggregateInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.PraticaOrderByWithRelationAndSearchRelevanceInput? pratica; + + final _i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput? modulo; + + final _i2.ContrattoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + '_relevance': $relevance, + }; +} + +enum OffertaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + nome._('nome'), + servizioEwoId._('servizioEwoId'); + + const OffertaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class OffertaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const OffertaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.OffertaOrderByRelevanceFieldEnum, + Iterable<_i2.OffertaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class OffertaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const OffertaOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataFineOfferta; + + final _i2.SortOrder? dataInizioOfferta; + + final _i2.SortOrder? servizioEwoId; + + final _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput? servizioEwo; + + final _i2.ContrattoEnelLuceOrderByRelationAggregateInput? contrattiEnelLuce; + + final _i2.ContrattoEnelGasOrderByRelationAggregateInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraOrderByRelationAggregateInput? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneOrderByRelationAggregateInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaOrderByRelationAggregateInput? offerteIncluse; + + final _i2.OffertaOrderByRelationAggregateInput? inclusaInOfferte; + + final _i2.OffertaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + '_relevance': $relevance, + }; +} + +enum ContrattoEnelLuceOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + statoContrattoId._('statoContrattoId'), + fornituraLuceUuid._('fornituraLuceUuid'), + contrattoUuid._('contrattoUuid'), + offertaUuid._('offertaUuid'); + + const ContrattoEnelLuceOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ContrattoEnelLuceOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceOrderByRelevanceFieldEnum, + Iterable<_i2.ContrattoEnelLuceOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.FornituraLuceOrderByWithRelationAndSearchRelevanceInput? + fornituraLuce; + + final _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput? contratto; + + final _i2.OffertaOrderByWithRelationAndSearchRelevanceInput? offerta; + + final _i2.ContrattoEnelLuceOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + '_relevance': $relevance, + }; +} + +class ContrattoEnelLuceWhereUniqueInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereInput, + Iterable<_i2.ContrattoEnelLuceWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereInput, + Iterable<_i2.ContrattoEnelLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.FornituraLuceRelationFilter, + _i2.FornituraLuceWhereInput>? fornituraLuce; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +enum ContrattoEnelLuceScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ContrattoEnelLuce'), + statoContrattoId('statoContrattoId', 'ContrattoEnelLuce'), + fornituraLuceUuid('fornituraLuceUuid', 'ContrattoEnelLuce'), + contrattoUuid('contrattoUuid', 'ContrattoEnelLuce'), + offertaUuid('offertaUuid', 'ContrattoEnelLuce'); + + const ContrattoEnelLuceScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornituraLuceContrattiEnelLuceArgs + implements _i1.JsonConvertible> { + const FornituraLuceContrattiEnelLuceArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelLuceWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelLuceWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalar, + Iterable<_i2.ContrattoEnelLuceScalar>>? distinct; + + final _i2.ContrattoEnelLuceSelect? select; + + final _i2.ContrattoEnelLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelXAssicurazioneStatoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneStatoArgs({ + this.select, + this.include, + }); + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelXAssicurazioneContrattoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneContrattoArgs({ + this.select, + this.include, + }); + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelXAssicurazioneDomicilioArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneDomicilioArgs({ + this.select, + this.include, + }); + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ServizioEwoWhereUniqueInput + implements _i1.JsonConvertible> { + const ServizioEwoWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereInput, + Iterable<_i2.ServizioEwoWhereInput>>? AND; + + final Iterable<_i2.ServizioEwoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereInput, + Iterable<_i2.ServizioEwoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoServizioEwoFilter, _i3.TipoServizioEwo>? + tipoServizioEwo; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? icona; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i2.TipoPraticaListRelationFilter? tipiPratiche; + + final _i2.FornituraListRelationFilter? forniture; + + final _i2.StatoPraticaListRelationFilter? statiPossibiliPratiche; + + final _i2.StatoContrattoListRelationFilter? statiPossibiliContratti; + + final _i2.OffertaListRelationFilter? offerte; + + final _i2.ModuloContrattoListRelationFilter? moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +enum ServizioEwoScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'ServizioEwo'), + nome('nome', 'ServizioEwo'), + fornitoreId('fornitoreId', 'ServizioEwo'), + tipoServizioEwo<_i3.TipoServizioEwo>('tipoServizioEwo', 'ServizioEwo'), + colore('colore', 'ServizioEwo'), + icona('icona', 'ServizioEwo'); + + const ServizioEwoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornitoreServiziEwoArgs + implements _i1.JsonConvertible> { + const FornitoreServiziEwoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ServizioEwoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ServizioEwoScalar, Iterable<_i2.ServizioEwoScalar>>? + distinct; + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ModuloContrattoServiziEwoCollegabiliArgs + implements _i1.JsonConvertible> { + const ModuloContrattoServiziEwoCollegabiliArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ServizioEwoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ServizioEwoScalar, Iterable<_i2.ServizioEwoScalar>>? + distinct; + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoWhereUniqueInput + implements _i1.JsonConvertible> { + const ContrattoWhereUniqueInput({ + this.uuid, + this.codice, + this.AND, + this.OR, + this.NOT, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String? codice; + + final _i1 + .PrismaUnion<_i2.ContrattoWhereInput, Iterable<_i2.ContrattoWhereInput>>? + AND; + + final Iterable<_i2.ContrattoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ContrattoWhereInput, Iterable<_i2.ContrattoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAttivazione; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.BoolNullableFilter, + _i1.PrismaUnion>? trend; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingGruppoEnel; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? profilazioneEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? bollettaWeb; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? rid; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataCessazione; + + final _i1 + .PrismaUnion<_i2.IntNullableFilter, _i1.PrismaUnion>? + mesiDurata; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? praticaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? moduloContrattoId; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.PraticaNullableRelationFilter, + _i1.PrismaUnion<_i2.PraticaWhereInput, _i1.PrismaNull>>? pratica; + + final _i1.PrismaUnion<_i2.ModuloContrattoNullableRelationFilter, + _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, _i1.PrismaNull>>? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +enum ContrattoScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Contratto'), + codice('codice', 'Contratto'), + dataInserimento('dataInserimento', 'Contratto'), + dataAttivazione('dataAttivazione', 'Contratto'), + ultimoAggiornamentoStato('ultimoAggiornamentoStato', 'Contratto'), + trend('trend', 'Contratto'), + nota('nota', 'Contratto'), + marketingEnelEnergia('marketingEnelEnergia', 'Contratto'), + marketingGruppoEnel('marketingGruppoEnel', 'Contratto'), + profilazioneEnelEnergia('profilazioneEnelEnergia', 'Contratto'), + bollettaWeb('bollettaWeb', 'Contratto'), + rid('rid', 'Contratto'), + dataCessazione('dataCessazione', 'Contratto'), + mesiDurata('mesiDurata', 'Contratto'), + offertaUuid('offertaUuid', 'Contratto'), + statoContrattoId('statoContrattoId', 'Contratto'), + soggettoUuid('soggettoUuid', 'Contratto'), + utenteUuid('utenteUuid', 'Contratto'), + negozioCodice('negozioCodice', 'Contratto'), + praticaUuid('praticaUuid', 'Contratto'), + moduloContrattoId('moduloContrattoId', 'Contratto'); + + const ContrattoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ModuloContrattoContrattiArgs + implements _i1.JsonConvertible> { + const ModuloContrattoContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ModuloContrattoFornitoreArgs + implements _i1.JsonConvertible> { + const ModuloContrattoFornitoreArgs({ + this.select, + this.include, + }); + + final _i2.FornitoreSelect? select; + + final _i2.FornitoreInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ModuloContrattoWhereUniqueInput + implements _i1.JsonConvertible> { + const ModuloContrattoWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, + Iterable<_i2.ModuloContrattoWhereInput>>? AND; + + final Iterable<_i2.ModuloContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereInput, + Iterable<_i2.ModuloContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? + clienteTarget; + + final _i1.PrismaUnion<_i2.EnumCanaleFilter, _i3.Canale>? canale; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoModuloContrattoId; + + final _i2.ServizioEwoListRelationFilter? serviziEwoCollegabili; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoRelationFilter, + _i2.TipoModuloContrattoWhereInput>? tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +enum ModuloContrattoScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'ModuloContratto'), + nome('nome', 'ModuloContratto'), + fornitoreId('fornitoreId', 'ModuloContratto'), + clienteTarget<_i3.TipoSoggetto>('clienteTarget', 'ModuloContratto'), + canale<_i3.Canale>('canale', 'ModuloContratto'), + tipoModuloContrattoId('tipoModuloContrattoId', 'ModuloContratto'); + + const ModuloContrattoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class TipoModuloContrattoModuloContrattoArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoModuloContrattoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ModuloContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ModuloContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalar, + Iterable<_i2.ModuloContrattoScalar>>? distinct; + + final _i2.ModuloContrattoSelect? select; + + final _i2.ModuloContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class TipoModuloContrattoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoCountOutputTypeSelect({this.moduloContratto}); + + final bool? moduloContratto; + + @override + Map toJson() => {'ModuloContratto': moduloContratto}; +} + +class TipoModuloContrattoCountArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoCountArgs({this.select}); + + final _i2.TipoModuloContrattoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoInclude + implements _i1.JsonConvertible> { + const TipoModuloContrattoInclude({ + this.moduloContratto, + this.$count, + }); + + final _i1.PrismaUnion? + moduloContratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'ModuloContratto': moduloContratto, + '_count': $count, + }; +} + +class ModuloContrattoTipoModuloArgs + implements _i1.JsonConvertible> { + const ModuloContrattoTipoModuloArgs({ + this.select, + this.include, + }); + + final _i2.TipoModuloContrattoSelect? select; + + final _i2.TipoModuloContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ModuloContrattoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ModuloContrattoCountOutputTypeSelect({ + this.serviziEwoCollegabili, + this.contratti, + }); + + final bool? serviziEwoCollegabili; + + final bool? contratti; + + @override + Map toJson() => { + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoCountArgs + implements _i1.JsonConvertible> { + const ModuloContrattoCountArgs({this.select}); + + final _i2.ModuloContrattoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ModuloContrattoInclude + implements _i1.JsonConvertible> { + const ModuloContrattoInclude({ + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + this.$count, + }); + + final _i1.PrismaUnion? + serviziEwoCollegabili; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipoModulo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + '_count': $count, + }; +} + +class TipoModuloContrattoSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoSelect({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final bool? numeroOfferteCollegabili; + + final _i1.PrismaUnion? + moduloContratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + '_count': $count, + }; +} + +class ModuloContrattoSelect + implements _i1.JsonConvertible> { + const ModuloContrattoSelect({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? clienteTarget; + + final bool? canale; + + final bool? tipoModuloContrattoId; + + final _i1.PrismaUnion? + serviziEwoCollegabili; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipoModulo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + '_count': $count, + }; +} + +class FornitoreModuliContrattoArgs + implements _i1.JsonConvertible> { + const FornitoreModuliContrattoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ModuloContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ModuloContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalar, + Iterable<_i2.ModuloContrattoScalar>>? distinct; + + final _i2.ModuloContrattoSelect? select; + + final _i2.ModuloContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +enum ProduttoreOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const ProduttoreOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ProduttoreOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ProduttoreOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ProduttoreOrderByRelevanceFieldEnum, + Iterable<_i2.ProduttoreOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ProduttoreOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ProduttoreOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.prodotti, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ProdottoOrderByRelationAggregateInput? prodotti; + + final _i2.ProduttoreOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + '_relevance': $relevance, + }; +} + +enum TipoProdottoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'); + + const TipoProdottoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class TipoProdottoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const TipoProdottoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoOrderByRelevanceFieldEnum, + Iterable<_i2.TipoProdottoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class TipoProdottoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const TipoProdottoOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.prodotti, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ProdottoOrderByRelationAggregateInput? prodotti; + + final _i2.TipoProdottoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + '_relevance': $relevance, + }; +} + +enum ProdottoOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + modello._('modello'), + produttoreId._('produttoreId'), + fornitoreId._('fornitoreId'), + tipoProdottoId._('tipoProdottoId'); + + const ProdottoOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ProdottoOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ProdottoOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ProdottoOrderByRelevanceFieldEnum, + Iterable<_i2.ProdottoOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ProdottoOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ProdottoOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? modello; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? prezzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? vendibileDal; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? vendibileAl; + + final _i2.SortOrder? produttoreId; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoProdottoId; + + final _i2.ProduttoreOrderByWithRelationAndSearchRelevanceInput? produttore; + + final _i2.OrdineOrderByRelationAggregateInput? prodottiOrdinati; + + final _i2.FornitoreOrderByWithRelationAndSearchRelevanceInput? fornitore; + + final _i2.TipoProdottoOrderByWithRelationAndSearchRelevanceInput? + tipoProdotto; + + final _i2.ProdottoOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + '_relevance': $relevance, + }; +} + +class ProdottoWhereUniqueInput + implements _i1.JsonConvertible> { + const ProdottoWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + }); + + final String? uuid; + + final _i1 + .PrismaUnion<_i2.ProdottoWhereInput, Iterable<_i2.ProdottoWhereInput>>? + AND; + + final Iterable<_i2.ProdottoWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ProdottoWhereInput, Iterable<_i2.ProdottoWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? modello; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? prezzo; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileDal; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileAl; + + final _i1.PrismaUnion<_i2.StringFilter, String>? produttoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoProdottoId; + + final _i1.PrismaUnion<_i2.ProduttoreRelationFilter, _i2.ProduttoreWhereInput>? + produttore; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i1.PrismaUnion<_i2.FornitoreRelationFilter, _i2.FornitoreWhereInput>? + fornitore; + + final _i1 + .PrismaUnion<_i2.TipoProdottoRelationFilter, _i2.TipoProdottoWhereInput>? + tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +enum ProdottoScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Prodotto'), + modello('modello', 'Prodotto'), + prezzo('prezzo', 'Prodotto'), + vendibileDal('vendibileDal', 'Prodotto'), + vendibileAl('vendibileAl', 'Prodotto'), + produttoreId('produttoreId', 'Prodotto'), + fornitoreId('fornitoreId', 'Prodotto'), + tipoProdottoId('tipoProdottoId', 'Prodotto'); + + const ProdottoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ProduttoreProdottiArgs + implements _i1.JsonConvertible> { + const ProduttoreProdottiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ProdottoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ProdottoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ProdottoScalar, Iterable<_i2.ProdottoScalar>>? + distinct; + + final _i2.ProdottoSelect? select; + + final _i2.ProdottoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ProduttoreCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ProduttoreCountOutputTypeSelect({this.prodotti}); + + final bool? prodotti; + + @override + Map toJson() => {'prodotti': prodotti}; +} + +class ProduttoreCountArgs implements _i1.JsonConvertible> { + const ProduttoreCountArgs({this.select}); + + final _i2.ProduttoreCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProduttoreInclude implements _i1.JsonConvertible> { + const ProduttoreInclude({ + this.prodotti, + this.$count, + }); + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'prodotti': prodotti, + '_count': $count, + }; +} + +class ProdottoProduttoreArgs + implements _i1.JsonConvertible> { + const ProdottoProduttoreArgs({ + this.select, + this.include, + }); + + final _i2.ProduttoreSelect? select; + + final _i2.ProduttoreInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class OrdineProdottiArgs implements _i1.JsonConvertible> { + const OrdineProdottiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ProdottoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ProdottoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ProdottoScalar, Iterable<_i2.ProdottoScalar>>? + distinct; + + final _i2.ProdottoSelect? select; + + final _i2.ProdottoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OrdineSoggettoArgs implements _i1.JsonConvertible> { + const OrdineSoggettoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class OrdineDomicilioArgs implements _i1.JsonConvertible> { + const OrdineDomicilioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.DomicilioWhereInput? where; + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +enum StatoOrdineOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + id._('id'), + nome._('nome'), + colore._('colore'); + + const StatoOrdineOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class StatoOrdineOrderByRelevanceInput + implements _i1.JsonConvertible> { + const StatoOrdineOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineOrderByRelevanceFieldEnum, + Iterable<_i2.StatoOrdineOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class StatoOrdineOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const StatoOrdineOrderByWithRelationAndSearchRelevanceInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + this.$relevance, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + final _i2.OrdineOrderByRelationAggregateInput? ordini; + + final _i2.StatoOrdineOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + '_relevance': $relevance, + }; +} + +enum OpportunitaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + nome._('nome'), + form._('form'); + + const OpportunitaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class OpportunitaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const OpportunitaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.OpportunitaOrderByRelevanceFieldEnum, + Iterable<_i2.OpportunitaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class OpportunitaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const OpportunitaOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataInizio; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataFine; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? form; + + final _i2.LeadOrderByRelationAggregateInput? leads; + + final _i2.UtenteOrderByRelationAggregateInput? gestoriLead; + + final _i2.UtenteOrderByRelationAggregateInput? agenti; + + final _i2.OpportunitaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + '_relevance': $relevance, + }; +} + +enum StatoOpportunitaOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + nome._('nome'), + colore._('colore'), + opportunitaUuid._('opportunitaUuid'); + + const StatoOpportunitaOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class StatoOpportunitaOrderByRelevanceInput + implements _i1.JsonConvertible> { + const StatoOpportunitaOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaOrderByRelevanceFieldEnum, + Iterable<_i2.StatoOpportunitaOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? tipoStato; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? ordine; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.LeadOrderByRelationAggregateInput? leads; + + final _i2.StatoOpportunitaOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + '_relevance': $relevance, + }; +} + +enum LeadOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + opportunitaUuid._('opportunitaUuid'), + soggettoUuid._('soggettoUuid'), + domicilioUuid._('domicilioUuid'), + statoOpportunitaUuid._('statoOpportunitaUuid'), + utenteUuid._('utenteUuid'), + negozioCodice._('negozioCodice'), + agenteUuid._('agenteUuid'), + appuntamenti._('appuntamenti'), + form._('form'), + nota._('nota'); + + const LeadOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class LeadOrderByRelevanceInput + implements _i1.JsonConvertible> { + const LeadOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.LeadOrderByRelevanceFieldEnum, + Iterable<_i2.LeadOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class LeadOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const LeadOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.SortOrder? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i2.SortOrder? statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? agenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? appuntamenti; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? form; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataInserimento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataScadenza; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? nota; + + final _i2.OpportunitaOrderByWithRelationAndSearchRelevanceInput? opportunita; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput? domicilio; + + final _i2.StatoOpportunitaOrderByWithRelationAndSearchRelevanceInput? + statoOpportunita; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? agente; + + final _i2.OrdineOrderByRelationAggregateInput? ordine; + + final _i2.HistoryOrderByRelationAggregateInput? history; + + final _i2.LeadOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + '_relevance': $relevance, + }; +} + +enum OrdineOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + codice._('codice'), + soggettoUuid._('soggettoUuid'), + domicilioUuid._('domicilioUuid'), + statoOrdineId._('statoOrdineId'), + leadUuid._('leadUuid'), + utenteUuid._('utenteUuid'), + negozioCodice._('negozioCodice'); + + const OrdineOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class OrdineOrderByRelevanceInput + implements _i1.JsonConvertible> { + const OrdineOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.OrdineOrderByRelevanceFieldEnum, + Iterable<_i2.OrdineOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class OrdineOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const OrdineOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? valore; + + final _i2.SortOrder? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? statoOrdineId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? leadUuid; + + final _i2.SortOrder? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i2.ProdottoOrderByRelationAggregateInput? prodotti; + + final _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput? soggetto; + + final _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput? domicilio; + + final _i2.StatoOrdineOrderByWithRelationAndSearchRelevanceInput? statoOrdine; + + final _i2.LeadOrderByWithRelationAndSearchRelevanceInput? lead; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.OrdineOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + '_relevance': $relevance, + }; +} + +class OrdineWhereUniqueInput + implements _i1.JsonConvertible> { + const OrdineWhereUniqueInput({ + this.uuid, + this.codice, + this.AND, + this.OR, + this.NOT, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final String? uuid; + + final String? codice; + + final _i1.PrismaUnion<_i2.OrdineWhereInput, Iterable<_i2.OrdineWhereInput>>? + AND; + + final Iterable<_i2.OrdineWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OrdineWhereInput, Iterable<_i2.OrdineWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? valore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoOrdineId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i2.ProdottoListRelationFilter? prodotti; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + final _i1.PrismaUnion<_i2.StatoOrdineNullableRelationFilter, + _i1.PrismaUnion<_i2.StatoOrdineWhereInput, _i1.PrismaNull>>? statoOrdine; + + final _i1.PrismaUnion<_i2.LeadNullableRelationFilter, + _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>>? lead; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +enum OrdineScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Ordine'), + codice('codice', 'Ordine'), + dataInserimento('dataInserimento', 'Ordine'), + valore('valore', 'Ordine'), + soggettoUuid('soggettoUuid', 'Ordine'), + domicilioUuid('domicilioUuid', 'Ordine'), + statoOrdineId('statoOrdineId', 'Ordine'), + leadUuid('leadUuid', 'Ordine'), + utenteUuid('utenteUuid', 'Ordine'), + negozioCodice('negozioCodice', 'Ordine'); + + const OrdineScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class StatoOrdineOrdiniArgs + implements _i1.JsonConvertible> { + const StatoOrdineOrdiniArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoOrdineCountOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineCountOutputTypeSelect({this.ordini}); + + final bool? ordini; + + @override + Map toJson() => {'ordini': ordini}; +} + +class StatoOrdineCountArgs + implements _i1.JsonConvertible> { + const StatoOrdineCountArgs({this.select}); + + final _i2.StatoOrdineCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineInclude implements _i1.JsonConvertible> { + const StatoOrdineInclude({ + this.ordini, + this.$count, + }); + + final _i1.PrismaUnion? ordini; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'ordini': ordini, + '_count': $count, + }; +} + +class OrdineStatoOrdineArgs + implements _i1.JsonConvertible> { + const OrdineStatoOrdineArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.StatoOrdineWhereInput? where; + + final _i2.StatoOrdineSelect? select; + + final _i2.StatoOrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LeadWhereUniqueInput + implements _i1.JsonConvertible> { + const LeadWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.LeadWhereInput, Iterable<_i2.LeadWhereInput>>? AND; + + final Iterable<_i2.LeadWhereInput>? OR; + + final _i1.PrismaUnion<_i2.LeadWhereInput, Iterable<_i2.LeadWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? opportunitaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? agenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? appuntamenti; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataScadenza; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + final _i1 + .PrismaUnion<_i2.OpportunitaRelationFilter, _i2.OpportunitaWhereInput>? + opportunita; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + final _i1.PrismaUnion<_i2.StatoOpportunitaRelationFilter, + _i2.StatoOpportunitaWhereInput>? statoOpportunita; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? agente; + + final _i2.OrdineListRelationFilter? ordine; + + final _i2.HistoryListRelationFilter? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +enum LeadScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Lead'), + opportunitaUuid('opportunitaUuid', 'Lead'), + soggettoUuid('soggettoUuid', 'Lead'), + domicilioUuid('domicilioUuid', 'Lead'), + statoOpportunitaUuid('statoOpportunitaUuid', 'Lead'), + utenteUuid('utenteUuid', 'Lead'), + negozioCodice('negozioCodice', 'Lead'), + agenteUuid('agenteUuid', 'Lead'), + appuntamenti('appuntamenti', 'Lead'), + form('form', 'Lead'), + dataInserimento('dataInserimento', 'Lead'), + dataScadenza('dataScadenza', 'Lead'), + dataAppuntamento('dataAppuntamento', 'Lead'), + nota('nota', 'Lead'); + + const LeadScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OpportunitaLeadsArgs + implements _i1.JsonConvertible> { + const OpportunitaLeadsArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class TipoPraticaServiziEwoArgs + implements _i1.JsonConvertible> { + const TipoPraticaServiziEwoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ServizioEwoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ServizioEwoScalar, Iterable<_i2.ServizioEwoScalar>>? + distinct; + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class PraticaCodicePraticaTipoPraticaCompoundUniqueInput + implements _i1.JsonConvertible> { + const PraticaCodicePraticaTipoPraticaCompoundUniqueInput({ + required this.codice, + required this.tipoPraticaId, + }); + + final String codice; + + final String tipoPraticaId; + + @override + Map toJson() => { + 'codice': codice, + 'tipoPraticaId': tipoPraticaId, + }; +} + +class PraticaWhereUniqueInput + implements _i1.JsonConvertible> { + const PraticaWhereUniqueInput({ + this.uuid, + this.codicePraticaTipoPratica, + this.AND, + this.OR, + this.NOT, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final String? uuid; + + final _i2.PraticaCodicePraticaTipoPraticaCompoundUniqueInput? + codicePraticaTipoPratica; + + final _i1.PrismaUnion<_i2.PraticaWhereInput, Iterable<_i2.PraticaWhereInput>>? + AND; + + final Iterable<_i2.PraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.PraticaWhereInput, Iterable<_i2.PraticaWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoPraticaId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoPraticaId; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1 + .PrismaUnion<_i2.TipoPraticaRelationFilter, _i2.TipoPraticaWhereInput>? + tipoPratica; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.UtenteNullableRelationFilter, + _i1.PrismaUnion<_i2.UtenteWhereInput, _i1.PrismaNull>>? utente; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i1.PrismaUnion<_i2.StatoPraticaNullableRelationFilter, + _i1.PrismaUnion<_i2.StatoPraticaWhereInput, _i1.PrismaNull>>? stato; + + final _i2.ContrattoListRelationFilter? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codicePratica_tipoPratica': codicePraticaTipoPratica, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +enum PraticaScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Pratica'), + codice('codice', 'Pratica'), + dataInserimento('dataInserimento', 'Pratica'), + tipoPraticaId('tipoPraticaId', 'Pratica'), + soggettoUuid('soggettoUuid', 'Pratica'), + utenteUuid('utenteUuid', 'Pratica'), + negozioCodice('negozioCodice', 'Pratica'), + statoPraticaId('statoPraticaId', 'Pratica'), + ultimoAggiornamentoStato('ultimoAggiornamentoStato', 'Pratica'); + + const PraticaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class TipoPraticaPraticheArgs + implements _i1.JsonConvertible> { + const TipoPraticaPraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.PraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.PraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.PraticaScalar, Iterable<_i2.PraticaScalar>>? + distinct; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class TipoPraticaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoPraticaCountOutputTypeSelect({ + this.serviziEwo, + this.pratiche, + }); + + final bool? serviziEwo; + + final bool? pratiche; + + @override + Map toJson() => { + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaCountArgs + implements _i1.JsonConvertible> { + const TipoPraticaCountArgs({this.select}); + + final _i2.TipoPraticaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoPraticaInclude implements _i1.JsonConvertible> { + const TipoPraticaInclude({ + this.serviziEwo, + this.pratiche, + this.$count, + }); + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + '_count': $count, + }; +} + +class PraticaTipoPraticaArgs + implements _i1.JsonConvertible> { + const PraticaTipoPraticaArgs({ + this.select, + this.include, + }); + + final _i2.TipoPraticaSelect? select; + + final _i2.TipoPraticaInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class PraticaSoggettoArgs implements _i1.JsonConvertible> { + const PraticaSoggettoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class NegozioPraticheArgs implements _i1.JsonConvertible> { + const NegozioPraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.PraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.PraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.PraticaScalar, Iterable<_i2.PraticaScalar>>? + distinct; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteWhereUniqueInput + implements _i1.JsonConvertible> { + const UtenteWhereUniqueInput({ + this.uuid, + this.firebaseUid, + this.email, + this.AND, + this.OR, + this.NOT, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final String? firebaseUid; + + final String? email; + + final _i1.PrismaUnion<_i2.UtenteWhereInput, Iterable<_i2.UtenteWhereInput>>? + AND; + + final Iterable<_i2.UtenteWhereInput>? OR; + + final _i1.PrismaUnion<_i2.UtenteWhereInput, Iterable<_i2.UtenteWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.EnumRuoloUtenteFilter, _i3.RuoloUtente>? ruolo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? photoUrl; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nomeVisualizzato; + + final _i1.PrismaUnion<_i2.NegozioNullableRelationFilter, + _i1.PrismaUnion<_i2.NegozioWhereInput, _i1.PrismaNull>>? negozio; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.IngressiListRelationFilter? ingressi; + + final _i2.LeadListRelationFilter? leadsGestiti; + + final _i2.LeadListRelationFilter? leadsAssegnati; + + final _i2.OpportunitaListRelationFilter? opportunitaGestite; + + final _i2.OpportunitaListRelationFilter? opportunitaAssegnate; + + final _i2.OrdineListRelationFilter? ordini; + + final _i2.HistoryListRelationFilter? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +enum UtenteScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Utente'), + firebaseUid('firebaseUid', 'Utente'), + email('email', 'Utente'), + ruolo<_i3.RuoloUtente>('ruolo', 'Utente'), + photoUrl('photoUrl', 'Utente'), + negozioCodice('negozioCodice', 'Utente'), + nomeVisualizzato('nomeVisualizzato', 'Utente'); + + const UtenteScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class NegozioUtentiArgs implements _i1.JsonConvertible> { + const NegozioUtentiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i2.UtenteOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.UtenteWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.UtenteScalar, Iterable<_i2.UtenteScalar>>? distinct; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NegozioContrattiArgs + implements _i1.JsonConvertible> { + const NegozioContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +enum SoggettoScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Soggetto'), + ragioneSociale('ragioneSociale', 'Soggetto'), + iban('iban', 'Soggetto'), + tipo<_i3.TipoSoggetto>('tipo', 'Soggetto'), + negozioPreferitoUuid('negozioPreferitoUuid', 'Soggetto'), + codiceFiscale('codiceFiscale', 'Soggetto'), + note('note', 'Soggetto'); + + const SoggettoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class NegozioSoggettiArgs implements _i1.JsonConvertible> { + const NegozioSoggettiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.SoggettoOrderByWithRelationAndSearchRelevanceInput>, + _i2.SoggettoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.SoggettoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.SoggettoScalar, Iterable<_i2.SoggettoScalar>>? + distinct; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NegozioWhereUniqueInput + implements _i1.JsonConvertible> { + const NegozioWhereUniqueInput({ + this.codice, + this.nome, + this.AND, + this.OR, + this.NOT, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String? codice; + + final String? nome; + + final _i1.PrismaUnion<_i2.NegozioWhereInput, Iterable<_i2.NegozioWhereInput>>? + AND; + + final Iterable<_i2.NegozioWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NegozioWhereInput, Iterable<_i2.NegozioWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? zonaNegozioId; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.UtenteListRelationFilter? utenti; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.SoggettoListRelationFilter? soggetti; + + final _i1 + .PrismaUnion<_i2.ZonaNegozioRelationFilter, _i2.ZonaNegozioWhereInput>? + zonaNegozio; + + final _i2.IngressiListRelationFilter? ingressi; + + final _i2.LeadListRelationFilter? leads; + + final _i2.OrdineListRelationFilter? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +enum NegozioScalar implements _i1.PrismaEnum, _i1.Reference { + codice('codice', 'Negozio'), + nome('nome', 'Negozio'), + zonaNegozioId('zonaNegozioId', 'Negozio'); + + const NegozioScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ZonaNegozioNegoziArgs + implements _i1.JsonConvertible> { + const ZonaNegozioNegoziArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.NegozioOrderByWithRelationAndSearchRelevanceInput>, + _i2.NegozioOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.NegozioWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.NegozioScalar, Iterable<_i2.NegozioScalar>>? + distinct; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ZonaNegozioCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ZonaNegozioCountOutputTypeSelect({this.negozi}); + + final bool? negozi; + + @override + Map toJson() => {'negozi': negozi}; +} + +class ZonaNegozioCountArgs + implements _i1.JsonConvertible> { + const ZonaNegozioCountArgs({this.select}); + + final _i2.ZonaNegozioCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ZonaNegozioSelect implements _i1.JsonConvertible> { + const ZonaNegozioSelect({ + this.id, + this.nome, + this.negozi, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? negozi; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + '_count': $count, + }; +} + +class ZonaNegozioInclude implements _i1.JsonConvertible> { + const ZonaNegozioInclude({ + this.negozi, + this.$count, + }); + + final _i1.PrismaUnion? negozi; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'negozi': negozi, + '_count': $count, + }; +} + +class NegozioZonaNegozioArgs + implements _i1.JsonConvertible> { + const NegozioZonaNegozioArgs({ + this.select, + this.include, + }); + + final _i2.ZonaNegozioSelect? select; + + final _i2.ZonaNegozioInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class IngressiUtenteArgs implements _i1.JsonConvertible> { + const IngressiUtenteArgs({ + this.select, + this.include, + }); + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class IngressiNegozioArgs implements _i1.JsonConvertible> { + const IngressiNegozioArgs({ + this.select, + this.include, + }); + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class IngressiSelect implements _i1.JsonConvertible> { + const IngressiSelect({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.utente, + this.negozio, + }); + + final bool? uuid; + + final bool? data; + + final bool? clienti; + + final bool? nonClienti; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'utente': utente, + 'negozio': negozio, + }; +} + +class IngressiInclude implements _i1.JsonConvertible> { + const IngressiInclude({ + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + @override + Map toJson() => { + 'utente': utente, + 'negozio': negozio, + }; +} + +enum IngressiOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + utenteUuid._('utenteUuid'), + negozioCodice._('negozioCodice'); + + const IngressiOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class IngressiOrderByRelevanceInput + implements _i1.JsonConvertible> { + const IngressiOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.IngressiOrderByRelevanceFieldEnum, + Iterable<_i2.IngressiOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class IngressiOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const IngressiOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.utente, + this.negozio, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? data; + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.NegozioOrderByWithRelationAndSearchRelevanceInput? negozio; + + final _i2.IngressiOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'utente': utente, + 'negozio': negozio, + '_relevance': $relevance, + }; +} + +class IngressiWhereUniqueInput + implements _i1.JsonConvertible> { + const IngressiWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.utente, + this.negozio, + }); + + final String? uuid; + + final _i1 + .PrismaUnion<_i2.IngressiWhereInput, Iterable<_i2.IngressiWhereInput>>? + AND; + + final Iterable<_i2.IngressiWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.IngressiWhereInput, Iterable<_i2.IngressiWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? data; + + final _i1.PrismaUnion<_i2.IntFilter, int>? clienti; + + final _i1.PrismaUnion<_i2.IntFilter, int>? nonClienti; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? negozioCodice; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.NegozioRelationFilter, _i2.NegozioWhereInput>? + negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'utente': utente, + 'negozio': negozio, + }; +} + +enum IngressiScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Ingressi'), + data('data', 'Ingressi'), + clienti('clienti', 'Ingressi'), + nonClienti('nonClienti', 'Ingressi'), + utenteUuid('utenteUuid', 'Ingressi'), + negozioCodice('negozioCodice', 'Ingressi'); + + const IngressiScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class NegozioIngressiArgs implements _i1.JsonConvertible> { + const NegozioIngressiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.IngressiWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i2.IngressiOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.IngressiWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.IngressiScalar, Iterable<_i2.IngressiScalar>>? + distinct; + + final _i2.IngressiSelect? select; + + final _i2.IngressiInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NegozioLeadsArgs implements _i1.JsonConvertible> { + const NegozioLeadsArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NegozioOrdineArgs implements _i1.JsonConvertible> { + const NegozioOrdineArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NegozioCountOutputTypeSelect + implements _i1.JsonConvertible> { + const NegozioCountOutputTypeSelect({ + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final bool? pratiche; + + final bool? utenti; + + final bool? contratti; + + final bool? soggetti; + + final bool? ingressi; + + final bool? leads; + + final bool? ordine; + + @override + Map toJson() => { + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCountArgs implements _i1.JsonConvertible> { + const NegozioCountArgs({this.select}); + + final _i2.NegozioCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NegozioInclude implements _i1.JsonConvertible> { + const NegozioInclude({ + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + this.$count, + }); + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? utenti; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? soggetti; + + final _i1.PrismaUnion? zonaNegozio; + + final _i1.PrismaUnion? ingressi; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + '_count': $count, + }; +} + +class UtenteNegozioArgs implements _i1.JsonConvertible> { + const UtenteNegozioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class UtenteContrattiArgs implements _i1.JsonConvertible> { + const UtenteContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtentePraticheArgs implements _i1.JsonConvertible> { + const UtentePraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.PraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.PraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.PraticaScalar, Iterable<_i2.PraticaScalar>>? + distinct; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteIngressiArgs implements _i1.JsonConvertible> { + const UtenteIngressiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.IngressiWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.IngressiOrderByWithRelationAndSearchRelevanceInput>, + _i2.IngressiOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.IngressiWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.IngressiScalar, Iterable<_i2.IngressiScalar>>? + distinct; + + final _i2.IngressiSelect? select; + + final _i2.IngressiInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteLeadsGestitiArgs + implements _i1.JsonConvertible> { + const UtenteLeadsGestitiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteLeadsAssegnatiArgs + implements _i1.JsonConvertible> { + const UtenteLeadsAssegnatiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OpportunitaWhereUniqueInput + implements _i1.JsonConvertible> { + const OpportunitaWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.OpportunitaWhereInput, + Iterable<_i2.OpportunitaWhereInput>>? AND; + + final Iterable<_i2.OpportunitaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OpportunitaWhereInput, + Iterable<_i2.OpportunitaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInizio; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataFine; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + final _i2.LeadListRelationFilter? leads; + + final _i2.UtenteListRelationFilter? gestoriLead; + + final _i2.UtenteListRelationFilter? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +enum OpportunitaScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Opportunita'), + nome('nome', 'Opportunita'), + dataInizio('dataInizio', 'Opportunita'), + dataFine('dataFine', 'Opportunita'), + form('form', 'Opportunita'); + + const OpportunitaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class UtenteOpportunitaGestiteArgs + implements _i1.JsonConvertible> { + const UtenteOpportunitaGestiteArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OpportunitaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i2.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OpportunitaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OpportunitaScalar, Iterable<_i2.OpportunitaScalar>>? + distinct; + + final _i2.OpportunitaSelect? select; + + final _i2.OpportunitaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteOpportunitaAssegnateArgs + implements _i1.JsonConvertible> { + const UtenteOpportunitaAssegnateArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OpportunitaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OpportunitaOrderByWithRelationAndSearchRelevanceInput>, + _i2.OpportunitaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OpportunitaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OpportunitaScalar, Iterable<_i2.OpportunitaScalar>>? + distinct; + + final _i2.OpportunitaSelect? select; + + final _i2.OpportunitaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteOrdiniArgs implements _i1.JsonConvertible> { + const UtenteOrdiniArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class HistoryCommentHistoryArgs + implements _i1.JsonConvertible> { + const HistoryCommentHistoryArgs({ + this.select, + this.include, + }); + + final _i2.HistorySelect? select; + + final _i2.HistoryInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class HistoryCommentInclude + implements _i1.JsonConvertible> { + const HistoryCommentInclude({this.history}); + + final _i1.PrismaUnion? history; + + @override + Map toJson() => {'History': history}; +} + +class HistoryCommentArgs implements _i1.JsonConvertible> { + const HistoryCommentArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.HistoryCommentWhereInput? where; + + final _i2.HistoryCommentSelect? select; + + final _i2.HistoryCommentInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class HistoryAttachmentHistoryArgs + implements _i1.JsonConvertible> { + const HistoryAttachmentHistoryArgs({ + this.select, + this.include, + }); + + final _i2.HistorySelect? select; + + final _i2.HistoryInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class HistoryAttachmentSelect + implements _i1.JsonConvertible> { + const HistoryAttachmentSelect({ + this.url, + this.name, + this.historyUuid, + this.history, + }); + + final bool? url; + + final bool? name; + + final bool? historyUuid; + + final _i1.PrismaUnion? history; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + 'History': history, + }; +} + +class HistoryAttachmentInclude + implements _i1.JsonConvertible> { + const HistoryAttachmentInclude({this.history}); + + final _i1.PrismaUnion? history; + + @override + Map toJson() => {'History': history}; +} + +class HistoryAttachmentArgs + implements _i1.JsonConvertible> { + const HistoryAttachmentArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.HistoryAttachmentWhereInput? where; + + final _i2.HistoryAttachmentSelect? select; + + final _i2.HistoryAttachmentInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class HistoryUtenteArgs implements _i1.JsonConvertible> { + const HistoryUtenteArgs({ + this.select, + this.include, + }); + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class HistoryLeadArgs implements _i1.JsonConvertible> { + const HistoryLeadArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class HistoryInclude implements _i1.JsonConvertible> { + const HistoryInclude({ + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + final _i1.PrismaUnion? comment; + + final _i1.PrismaUnion? attachment; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? lead; + + @override + Map toJson() => { + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryCommentSelect + implements _i1.JsonConvertible> { + const HistoryCommentSelect({ + this.comment, + this.historyUuid, + this.history, + }); + + final bool? comment; + + final bool? historyUuid; + + final _i1.PrismaUnion? history; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + 'History': history, + }; +} + +class HistorySelect implements _i1.JsonConvertible> { + const HistorySelect({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + final bool? uuid; + + final bool? timestamp; + + final bool? event; + + final bool? utenteUuid; + + final bool? leadUuid; + + final _i1.PrismaUnion? comment; + + final _i1.PrismaUnion? attachment; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +enum HistoryCommentOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + comment._('comment'), + historyUuid._('historyUuid'); + + const HistoryCommentOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class HistoryCommentOrderByRelevanceInput + implements _i1.JsonConvertible> { + const HistoryCommentOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentOrderByRelevanceFieldEnum, + Iterable<_i2.HistoryCommentOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class HistoryCommentOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const HistoryCommentOrderByWithRelationAndSearchRelevanceInput({ + this.comment, + this.historyUuid, + this.history, + this.$relevance, + }); + + final _i2.SortOrder? comment; + + final _i2.SortOrder? historyUuid; + + final _i2.HistoryOrderByWithRelationAndSearchRelevanceInput? history; + + final _i2.HistoryCommentOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + 'History': history, + '_relevance': $relevance, + }; +} + +enum HistoryAttachmentOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + url._('url'), + name$._('name'), + historyUuid._('historyUuid'); + + const HistoryAttachmentOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class HistoryAttachmentOrderByRelevanceInput + implements _i1.JsonConvertible> { + const HistoryAttachmentOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentOrderByRelevanceFieldEnum, + Iterable<_i2.HistoryAttachmentOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput({ + this.url, + this.name, + this.historyUuid, + this.history, + this.$relevance, + }); + + final _i2.SortOrder? url; + + final _i2.SortOrder? name; + + final _i2.SortOrder? historyUuid; + + final _i2.HistoryOrderByWithRelationAndSearchRelevanceInput? history; + + final _i2.HistoryAttachmentOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + 'History': history, + '_relevance': $relevance, + }; +} + +enum HistoryOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + event._('event'), + utenteUuid._('utenteUuid'), + leadUuid._('leadUuid'); + + const HistoryOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class HistoryOrderByRelevanceInput + implements _i1.JsonConvertible> { + const HistoryOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.HistoryOrderByRelevanceFieldEnum, + Iterable<_i2.HistoryOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class HistoryOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const HistoryOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + this.utente, + this.lead, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? timestamp; + + final _i2.SortOrder? event; + + final _i2.SortOrder? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? leadUuid; + + final _i2.HistoryCommentOrderByWithRelationAndSearchRelevanceInput? comment; + + final _i2.HistoryAttachmentOrderByWithRelationAndSearchRelevanceInput? + attachment; + + final _i2.UtenteOrderByWithRelationAndSearchRelevanceInput? utente; + + final _i2.LeadOrderByWithRelationAndSearchRelevanceInput? lead; + + final _i2.HistoryOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + '_relevance': $relevance, + }; +} + +class HistoryWhereUniqueInput + implements _i1.JsonConvertible> { + const HistoryWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.HistoryWhereInput, Iterable<_i2.HistoryWhereInput>>? + AND; + + final Iterable<_i2.HistoryWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryWhereInput, Iterable<_i2.HistoryWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? timestamp; + + final _i1.PrismaUnion<_i2.StringFilter, String>? event; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.HistoryCommentNullableRelationFilter, + _i1.PrismaUnion<_i2.HistoryCommentWhereInput, _i1.PrismaNull>>? comment; + + final _i1.PrismaUnion<_i2.HistoryAttachmentNullableRelationFilter, + _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, _i1.PrismaNull>>? + attachment; + + final _i1.PrismaUnion<_i2.UtenteRelationFilter, _i2.UtenteWhereInput>? utente; + + final _i1.PrismaUnion<_i2.LeadNullableRelationFilter, + _i1.PrismaUnion<_i2.LeadWhereInput, _i1.PrismaNull>>? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +enum HistoryScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'History'), + timestamp('timestamp', 'History'), + event('event', 'History'), + utenteUuid('utenteUuid', 'History'), + leadUuid('leadUuid', 'History'); + + const HistoryScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class UtenteHistoryArgs implements _i1.JsonConvertible> { + const UtenteHistoryArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.HistoryWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i2.HistoryOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.HistoryWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.HistoryScalar, Iterable<_i2.HistoryScalar>>? + distinct; + + final _i2.HistorySelect? select; + + final _i2.HistoryInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class UtenteCountOutputTypeSelect + implements _i1.JsonConvertible> { + const UtenteCountOutputTypeSelect({ + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final bool? contratti; + + final bool? pratiche; + + final bool? ingressi; + + final bool? leadsGestiti; + + final bool? leadsAssegnati; + + final bool? opportunitaGestite; + + final bool? opportunitaAssegnate; + + final bool? ordini; + + final bool? history; + + @override + Map toJson() => { + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCountArgs implements _i1.JsonConvertible> { + const UtenteCountArgs({this.select}); + + final _i2.UtenteCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class UtenteInclude implements _i1.JsonConvertible> { + const UtenteInclude({ + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + this.$count, + }); + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? ingressi; + + final _i1.PrismaUnion? leadsGestiti; + + final _i1.PrismaUnion? leadsAssegnati; + + final _i1.PrismaUnion? + opportunitaGestite; + + final _i1.PrismaUnion? + opportunitaAssegnate; + + final _i1.PrismaUnion? ordini; + + final _i1.PrismaUnion? history; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + '_count': $count, + }; +} + +class PraticaUtenteArgs implements _i1.JsonConvertible> { + const PraticaUtenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class PraticaNegozioArgs implements _i1.JsonConvertible> { + const PraticaNegozioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class StatoPraticaPraticheArgs + implements _i1.JsonConvertible> { + const StatoPraticaPraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.PraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.PraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.PraticaScalar, Iterable<_i2.PraticaScalar>>? + distinct; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoPraticaServiziEwoArgs + implements _i1.JsonConvertible> { + const StatoPraticaServiziEwoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ServizioEwoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ServizioEwoScalar, Iterable<_i2.ServizioEwoScalar>>? + distinct; + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoPraticaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoPraticaCountOutputTypeSelect({ + this.pratiche, + this.serviziEwo, + }); + + final bool? pratiche; + + final bool? serviziEwo; + + @override + Map toJson() => { + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaCountArgs + implements _i1.JsonConvertible> { + const StatoPraticaCountArgs({this.select}); + + final _i2.StatoPraticaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoPraticaSelect implements _i1.JsonConvertible> { + const StatoPraticaSelect({ + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + '_count': $count, + }; +} + +class StatoPraticaInclude implements _i1.JsonConvertible> { + const StatoPraticaInclude({ + this.pratiche, + this.serviziEwo, + this.$count, + }); + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + '_count': $count, + }; +} + +class PraticaStatoArgs implements _i1.JsonConvertible> { + const PraticaStatoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.StatoPraticaWhereInput? where; + + final _i2.StatoPraticaSelect? select; + + final _i2.StatoPraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class PraticaContrattoArgs + implements _i1.JsonConvertible> { + const PraticaContrattoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class PraticaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const PraticaCountOutputTypeSelect({this.contratto}); + + final bool? contratto; + + @override + Map toJson() => {'contratto': contratto}; +} + +class PraticaCountArgs implements _i1.JsonConvertible> { + const PraticaCountArgs({this.select}); + + final _i2.PraticaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PraticaInclude implements _i1.JsonConvertible> { + const PraticaInclude({ + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + this.$count, + }); + + final _i1.PrismaUnion? tipoPratica; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + '_count': $count, + }; +} + +class TipoPraticaSelect implements _i1.JsonConvertible> { + const TipoPraticaSelect({ + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + '_count': $count, + }; +} + +class PraticaSelect implements _i1.JsonConvertible> { + const PraticaSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + this.$count, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? tipoPraticaId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? statoPraticaId; + + final bool? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? tipoPratica; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + '_count': $count, + }; +} + +class NegozioSelect implements _i1.JsonConvertible> { + const NegozioSelect({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + this.$count, + }); + + final bool? codice; + + final bool? nome; + + final bool? zonaNegozioId; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? utenti; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? soggetti; + + final _i1.PrismaUnion? zonaNegozio; + + final _i1.PrismaUnion? ingressi; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + '_count': $count, + }; +} + +class UtenteSelect implements _i1.JsonConvertible> { + const UtenteSelect({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + this.$count, + }); + + final bool? uuid; + + final bool? firebaseUid; + + final bool? email; + + final bool? ruolo; + + final bool? photoUrl; + + final bool? negozioCodice; + + final bool? nomeVisualizzato; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? pratiche; + + final _i1.PrismaUnion? ingressi; + + final _i1.PrismaUnion? leadsGestiti; + + final _i1.PrismaUnion? leadsAssegnati; + + final _i1.PrismaUnion? + opportunitaGestite; + + final _i1.PrismaUnion? + opportunitaAssegnate; + + final _i1.PrismaUnion? ordini; + + final _i1.PrismaUnion? history; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + '_count': $count, + }; +} + +class OpportunitaGestoriLeadArgs + implements _i1.JsonConvertible> { + const OpportunitaGestoriLeadArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i2.UtenteOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.UtenteWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.UtenteScalar, Iterable<_i2.UtenteScalar>>? distinct; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OpportunitaAgentiArgs + implements _i1.JsonConvertible> { + const OpportunitaAgentiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.UtenteOrderByWithRelationAndSearchRelevanceInput>, + _i2.UtenteOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.UtenteWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.UtenteScalar, Iterable<_i2.UtenteScalar>>? distinct; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OpportunitaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const OpportunitaCountOutputTypeSelect({ + this.leads, + this.gestoriLead, + this.agenti, + }); + + final bool? leads; + + final bool? gestoriLead; + + final bool? agenti; + + @override + Map toJson() => { + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaCountArgs + implements _i1.JsonConvertible> { + const OpportunitaCountArgs({this.select}); + + final _i2.OpportunitaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OpportunitaInclude implements _i1.JsonConvertible> { + const OpportunitaInclude({ + this.leads, + this.gestoriLead, + this.agenti, + this.$count, + }); + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? gestoriLead; + + final _i1.PrismaUnion? agenti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + '_count': $count, + }; +} + +class LeadOpportunitaArgs implements _i1.JsonConvertible> { + const LeadOpportunitaArgs({ + this.select, + this.include, + }); + + final _i2.OpportunitaSelect? select; + + final _i2.OpportunitaInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class LeadSoggettoArgs implements _i1.JsonConvertible> { + const LeadSoggettoArgs({ + this.select, + this.include, + }); + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class LeadDomicilioArgs implements _i1.JsonConvertible> { + const LeadDomicilioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.DomicilioWhereInput? where; + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class StatoOpportunitaLeadsArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaLeadsArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoOpportunitaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaCountOutputTypeSelect({this.leads}); + + final bool? leads; + + @override + Map toJson() => {'leads': leads}; +} + +class StatoOpportunitaCountArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaCountArgs({this.select}); + + final _i2.StatoOpportunitaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaSelect({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + this.$count, + }); + + final bool? uuid; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? opportunitaUuid; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + '_count': $count, + }; +} + +class StatoOpportunitaInclude + implements _i1.JsonConvertible> { + const StatoOpportunitaInclude({ + this.leads, + this.$count, + }); + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'leads': leads, + '_count': $count, + }; +} + +class LeadStatoOpportunitaArgs + implements _i1.JsonConvertible> { + const LeadStatoOpportunitaArgs({ + this.select, + this.include, + }); + + final _i2.StatoOpportunitaSelect? select; + + final _i2.StatoOpportunitaInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class LeadUtenteArgs implements _i1.JsonConvertible> { + const LeadUtenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LeadNegozioArgs implements _i1.JsonConvertible> { + const LeadNegozioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LeadAgenteArgs implements _i1.JsonConvertible> { + const LeadAgenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class LeadOrdineArgs implements _i1.JsonConvertible> { + const LeadOrdineArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class LeadHistoryArgs implements _i1.JsonConvertible> { + const LeadHistoryArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.HistoryWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.HistoryOrderByWithRelationAndSearchRelevanceInput>, + _i2.HistoryOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.HistoryWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.HistoryScalar, Iterable<_i2.HistoryScalar>>? + distinct; + + final _i2.HistorySelect? select; + + final _i2.HistoryInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class LeadCountOutputTypeSelect + implements _i1.JsonConvertible> { + const LeadCountOutputTypeSelect({ + this.ordine, + this.history, + }); + + final bool? ordine; + + final bool? history; + + @override + Map toJson() => { + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCountArgs implements _i1.JsonConvertible> { + const LeadCountArgs({this.select}); + + final _i2.LeadCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LeadInclude implements _i1.JsonConvertible> { + const LeadInclude({ + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + this.$count, + }); + + final _i1.PrismaUnion? opportunita; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? statoOpportunita; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? agente; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? history; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + '_count': $count, + }; +} + +class OpportunitaSelect implements _i1.JsonConvertible> { + const OpportunitaSelect({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + this.$count, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataInizio; + + final bool? dataFine; + + final bool? form; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? gestoriLead; + + final _i1.PrismaUnion? agenti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + '_count': $count, + }; +} + +class LeadSelect implements _i1.JsonConvertible> { + const LeadSelect({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + this.$count, + }); + + final bool? uuid; + + final bool? opportunitaUuid; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOpportunitaUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? agenteUuid; + + final bool? appuntamenti; + + final bool? form; + + final bool? dataInserimento; + + final bool? dataScadenza; + + final bool? dataAppuntamento; + + final bool? nota; + + final _i1.PrismaUnion? opportunita; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? statoOpportunita; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? agente; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? history; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + '_count': $count, + }; +} + +class OrdineLeadArgs implements _i1.JsonConvertible> { + const OrdineLeadArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class OrdineUtenteArgs implements _i1.JsonConvertible> { + const OrdineUtenteArgs({ + this.select, + this.include, + }); + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class OrdineNegozioArgs implements _i1.JsonConvertible> { + const OrdineNegozioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class OrdineCountOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineCountOutputTypeSelect({this.prodotti}); + + final bool? prodotti; + + @override + Map toJson() => {'prodotti': prodotti}; +} + +class OrdineCountArgs implements _i1.JsonConvertible> { + const OrdineCountArgs({this.select}); + + final _i2.OrdineCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineInclude implements _i1.JsonConvertible> { + const OrdineInclude({ + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + this.$count, + }); + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? statoOrdine; + + final _i1.PrismaUnion? lead; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + '_count': $count, + }; +} + +class StatoOrdineSelect implements _i1.JsonConvertible> { + const StatoOrdineSelect({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final _i1.PrismaUnion? ordini; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + '_count': $count, + }; +} + +class OrdineSelect implements _i1.JsonConvertible> { + const OrdineSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + this.$count, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? valore; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOrdineId; + + final bool? leadUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? statoOrdine; + + final _i1.PrismaUnion? lead; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + '_count': $count, + }; +} + +class ProdottoProdottiOrdinatiArgs + implements _i1.JsonConvertible> { + const ProdottoProdottiOrdinatiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ProdottoFornitoreArgs + implements _i1.JsonConvertible> { + const ProdottoFornitoreArgs({ + this.select, + this.include, + }); + + final _i2.FornitoreSelect? select; + + final _i2.FornitoreInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class TipoProdottoProdottiArgs + implements _i1.JsonConvertible> { + const TipoProdottoProdottiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ProdottoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ProdottoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ProdottoScalar, Iterable<_i2.ProdottoScalar>>? + distinct; + + final _i2.ProdottoSelect? select; + + final _i2.ProdottoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class TipoProdottoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoProdottoCountOutputTypeSelect({this.prodotti}); + + final bool? prodotti; + + @override + Map toJson() => {'prodotti': prodotti}; +} + +class TipoProdottoCountArgs + implements _i1.JsonConvertible> { + const TipoProdottoCountArgs({this.select}); + + final _i2.TipoProdottoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoProdottoSelect implements _i1.JsonConvertible> { + const TipoProdottoSelect({ + this.id, + this.nome, + this.prodotti, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + '_count': $count, + }; +} + +class TipoProdottoInclude implements _i1.JsonConvertible> { + const TipoProdottoInclude({ + this.prodotti, + this.$count, + }); + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'prodotti': prodotti, + '_count': $count, + }; +} + +class ProdottoTipoProdottoArgs + implements _i1.JsonConvertible> { + const ProdottoTipoProdottoArgs({ + this.select, + this.include, + }); + + final _i2.TipoProdottoSelect? select; + + final _i2.TipoProdottoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ProdottoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoCountOutputTypeSelect({this.prodottiOrdinati}); + + final bool? prodottiOrdinati; + + @override + Map toJson() => {'prodottiOrdinati': prodottiOrdinati}; +} + +class ProdottoCountArgs implements _i1.JsonConvertible> { + const ProdottoCountArgs({this.select}); + + final _i2.ProdottoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoInclude implements _i1.JsonConvertible> { + const ProdottoInclude({ + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + this.$count, + }); + + final _i1.PrismaUnion? produttore; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipoProdotto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + '_count': $count, + }; +} + +class ProduttoreSelect implements _i1.JsonConvertible> { + const ProduttoreSelect({ + this.id, + this.nome, + this.prodotti, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + '_count': $count, + }; +} + +class ProdottoSelect implements _i1.JsonConvertible> { + const ProdottoSelect({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + this.$count, + }); + + final bool? uuid; + + final bool? modello; + + final bool? prezzo; + + final bool? vendibileDal; + + final bool? vendibileAl; + + final bool? produttoreId; + + final bool? fornitoreId; + + final bool? tipoProdottoId; + + final _i1.PrismaUnion? produttore; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipoProdotto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + '_count': $count, + }; +} + +class FornitoreProdottiArgs + implements _i1.JsonConvertible> { + const FornitoreProdottiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ProdottoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ProdottoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ProdottoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ProdottoScalar, Iterable<_i2.ProdottoScalar>>? + distinct; + + final _i2.ProdottoSelect? select; + + final _i2.ProdottoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class FornitoreCountOutputTypeSelect + implements _i1.JsonConvertible> { + const FornitoreCountOutputTypeSelect({ + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final bool? serviziEwo; + + final bool? moduliContratto; + + final bool? prodotti; + + @override + Map toJson() => { + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreCountArgs implements _i1.JsonConvertible> { + const FornitoreCountArgs({this.select}); + + final _i2.FornitoreCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornitoreInclude implements _i1.JsonConvertible> { + const FornitoreInclude({ + this.serviziEwo, + this.moduliContratto, + this.prodotti, + this.$count, + }); + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? + moduliContratto; + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + '_count': $count, + }; +} + +class ServizioEwoFornitoreArgs + implements _i1.JsonConvertible> { + const ServizioEwoFornitoreArgs({ + this.select, + this.include, + }); + + final _i2.FornitoreSelect? select; + + final _i2.FornitoreInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class TipoPraticaWhereUniqueInput + implements _i1.JsonConvertible> { + const TipoPraticaWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.serviziEwo, + this.pratiche, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereInput, + Iterable<_i2.TipoPraticaWhereInput>>? AND; + + final Iterable<_i2.TipoPraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereInput, + Iterable<_i2.TipoPraticaWhereInput>>? NOT; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.PraticaListRelationFilter? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +enum TipoPraticaScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'TipoPratica'), + nome('nome', 'TipoPratica'); + + const TipoPraticaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ServizioEwoTipiPraticheArgs + implements _i1.JsonConvertible> { + const ServizioEwoTipiPraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.TipoPraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.TipoPraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.TipoPraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.TipoPraticaScalar, Iterable<_i2.TipoPraticaScalar>>? + distinct; + + final _i2.TipoPraticaSelect? select; + + final _i2.TipoPraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class FornituraDomicilioArgs + implements _i1.JsonConvertible> { + const FornituraDomicilioArgs({ + this.select, + this.include, + }); + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class FornituraServizioEwoArgs + implements _i1.JsonConvertible> { + const FornituraServizioEwoArgs({ + this.select, + this.include, + }); + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class FornituraFornituraLuceArgs + implements _i1.JsonConvertible> { + const FornituraFornituraLuceArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.FornituraLuceWhereInput? where; + + final _i2.FornituraLuceSelect? select; + + final _i2.FornituraLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class FornituraGasWhereUniqueInput + implements _i1.JsonConvertible> { + const FornituraGasWhereUniqueInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.AND, + this.OR, + this.NOT, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + }); + + final String? uuid; + + final String? pdr; + + final String? fornituraUuid; + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, + Iterable<_i2.FornituraGasWhereInput>>? AND; + + final Iterable<_i2.FornituraGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraGasWhereInput, + Iterable<_i2.FornituraGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? matricolaContatore; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? remi; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasNullableRelationFilter, + _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, _i1.PrismaNull>>? + classeMisuratore; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasNullableRelationFilter, + _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, _i1.PrismaNull>>? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i1.PrismaUnion<_i2.FornituraRelationFilter, _i2.FornituraWhereInput>? + fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +enum FornituraGasScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'FornituraGas'), + pdr('pdr', 'FornituraGas'), + fornituraUuid('fornituraUuid', 'FornituraGas'), + classeMisuratoreGasId('classeMisuratoreGasId', 'FornituraGas'), + matricolaContatore('matricolaContatore', 'FornituraGas'), + remi('remi', 'FornituraGas'); + + const FornituraGasScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ClasseMisuratoreGasFornituraGasArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasFornituraGasArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.FornituraGasWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.FornituraGasOrderByWithRelationAndSearchRelevanceInput>, + _i2.FornituraGasOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.FornituraGasWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1 + .PrismaUnion<_i2.FornituraGasScalar, Iterable<_i2.FornituraGasScalar>>? + distinct; + + final _i2.FornituraGasSelect? select; + + final _i2.FornituraGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ClasseMisuratoreGasCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCountOutputTypeSelect({this.fornituraGas}); + + final bool? fornituraGas; + + @override + Map toJson() => {'fornituraGas': fornituraGas}; +} + +class ClasseMisuratoreGasCountArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCountArgs({this.select}); + + final _i2.ClasseMisuratoreGasCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasInclude + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasInclude({ + this.fornituraGas, + this.$count, + }); + + final _i1.PrismaUnion? + fornituraGas; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'fornituraGas': fornituraGas, + '_count': $count, + }; +} + +class FornituraGasClasseMisuratoreArgs + implements _i1.JsonConvertible> { + const FornituraGasClasseMisuratoreArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ClasseMisuratoreGasWhereInput? where; + + final _i2.ClasseMisuratoreGasSelect? select; + + final _i2.ClasseMisuratoreGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ConsumoAnnuoGasFornituraGasArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasFornituraGasArgs({ + this.select, + this.include, + }); + + final _i2.FornituraGasSelect? select; + + final _i2.FornituraGasInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ConsumoAnnuoGasSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.fornituraGas, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraGasUuid; + + final _i1.PrismaUnion? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + 'fornituraGas': fornituraGas, + }; +} + +class ConsumoAnnuoGasInclude + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasInclude({this.fornituraGas}); + + final _i1.PrismaUnion? + fornituraGas; + + @override + Map toJson() => {'fornituraGas': fornituraGas}; +} + +class FornituraGasConsumoAnnuoGasArgs + implements _i1.JsonConvertible> { + const FornituraGasConsumoAnnuoGasArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ConsumoAnnuoGasWhereInput? where; + + final _i2.ConsumoAnnuoGasSelect? select; + + final _i2.ConsumoAnnuoGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelGasStatoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasStatoArgs({ + this.select, + this.include, + }); + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelGasFornituraGasArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasFornituraGasArgs({ + this.select, + this.include, + }); + + final _i2.FornituraGasSelect? select; + + final _i2.FornituraGasInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelGasContrattoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasContrattoArgs({ + this.select, + this.include, + }); + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class OffertaServizioEwoArgs + implements _i1.JsonConvertible> { + const OffertaServizioEwoArgs({ + this.select, + this.include, + }); + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class OffertaContrattiEnelLuceArgs + implements _i1.JsonConvertible> { + const OffertaContrattiEnelLuceArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelLuceWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelLuceWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalar, + Iterable<_i2.ContrattoEnelLuceScalar>>? distinct; + + final _i2.ContrattoEnelLuceSelect? select; + + final _i2.ContrattoEnelLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelGasOffertaArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasOffertaArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelGasInclude + implements _i1.JsonConvertible> { + const ContrattoEnelGasInclude({ + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + fornituraGas; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + @override + Map toJson() => { + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +enum ContrattoEnelGasOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + statoContrattoId._('statoContrattoId'), + fornituraGasUuid._('fornituraGasUuid'), + contrattoUuid._('contrattoUuid'), + offertaUuid._('offertaUuid'); + + const ContrattoEnelGasOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ContrattoEnelGasOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasOrderByRelevanceFieldEnum, + Iterable<_i2.ContrattoEnelGasOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.FornituraGasOrderByWithRelationAndSearchRelevanceInput? + fornituraGas; + + final _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput? contratto; + + final _i2.OffertaOrderByWithRelationAndSearchRelevanceInput? offerta; + + final _i2.ContrattoEnelGasOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + '_relevance': $relevance, + }; +} + +class ContrattoEnelGasWhereUniqueInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereInput, + Iterable<_i2.ContrattoEnelGasWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereInput, + Iterable<_i2.ContrattoEnelGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraGasUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1 + .PrismaUnion<_i2.FornituraGasRelationFilter, _i2.FornituraGasWhereInput>? + fornituraGas; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +enum ContrattoEnelGasScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ContrattoEnelGas'), + statoContrattoId('statoContrattoId', 'ContrattoEnelGas'), + fornituraGasUuid('fornituraGasUuid', 'ContrattoEnelGas'), + contrattoUuid('contrattoUuid', 'ContrattoEnelGas'), + offertaUuid('offertaUuid', 'ContrattoEnelGas'); + + const ContrattoEnelGasScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OffertaContrattiEnelGasArgs + implements _i1.JsonConvertible> { + const OffertaContrattiEnelGasArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelGasWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelGasWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalar, + Iterable<_i2.ContrattoEnelGasScalar>>? distinct; + + final _i2.ContrattoEnelGasSelect? select; + + final _i2.ContrattoEnelGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelFibraStatoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraStatoArgs({ + this.select, + this.include, + }); + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelFibraContrattoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraContrattoArgs({ + this.select, + this.include, + }); + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelFibraOffertaArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraOffertaArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelFibraDomicilioArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraDomicilioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.DomicilioWhereInput? where; + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelFibraSelect + implements _i1.JsonConvertible> { + const ContrattoEnelFibraSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? servizioContrattoEnelFibra; + + final bool? tipoContrattoEnelFibra; + + final bool? tecnologiaContrattoEnelFibra; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + final _i1.PrismaUnion? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraInclude + implements _i1.JsonConvertible> { + const ContrattoEnelFibraInclude({ + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + final _i1.PrismaUnion? domicilio; + + @override + Map toJson() => { + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +enum ContrattoEnelFibraOrderByRelevanceFieldEnum implements _i1.PrismaEnum { + uuid._('uuid'), + statoContrattoId._('statoContrattoId'), + contrattoUuid._('contrattoUuid'), + domicilioUuid._('domicilioUuid'), + offertaUuid._('offertaUuid'); + + const ContrattoEnelFibraOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ContrattoEnelFibraOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraOrderByRelevanceFieldEnum, + Iterable<_i2.ContrattoEnelFibraOrderByRelevanceFieldEnum>> fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? servizioContrattoEnelFibra; + + final _i2.SortOrder? tipoContrattoEnelFibra; + + final _i2.SortOrder? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput? contratto; + + final _i2.OffertaOrderByWithRelationAndSearchRelevanceInput? offerta; + + final _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput? domicilio; + + final _i2.ContrattoEnelFibraOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + '_relevance': $relevance, + }; +} + +class ContrattoEnelFibraWhereUniqueInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereInput, + Iterable<_i2.ContrattoEnelFibraWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelFibraWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereInput, + Iterable<_i2.ContrattoEnelFibraWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.EnumServizioContrattoEnelFibraFilter, + _i3.ServizioContrattoEnelFibra>? servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTipoContrattoEnelFibraFilter, + _i3.TipoContrattoEnelFibra>? tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTecnologiaContrattoEnelFibraFilter, + _i3.TecnologiaContrattoEnelFibra>? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + final _i1.PrismaUnion<_i2.DomicilioNullableRelationFilter, + _i1.PrismaUnion<_i2.DomicilioWhereInput, _i1.PrismaNull>>? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +enum ContrattoEnelFibraScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ContrattoEnelFibra'), + statoContrattoId('statoContrattoId', 'ContrattoEnelFibra'), + contrattoUuid('contrattoUuid', 'ContrattoEnelFibra'), + servizioContrattoEnelFibra<_i3.ServizioContrattoEnelFibra>( + 'servizioContrattoEnelFibra', 'ContrattoEnelFibra'), + tipoContrattoEnelFibra<_i3.TipoContrattoEnelFibra>( + 'tipoContrattoEnelFibra', 'ContrattoEnelFibra'), + tecnologiaContrattoEnelFibra<_i3.TecnologiaContrattoEnelFibra>( + 'tecnologiaContrattoEnelFibra', 'ContrattoEnelFibra'), + domicilioUuid('domicilioUuid', 'ContrattoEnelFibra'), + offertaUuid('offertaUuid', 'ContrattoEnelFibra'); + + const ContrattoEnelFibraScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OffertaContrattiEnelFibraArgs + implements _i1.JsonConvertible> { + const OffertaContrattiEnelFibraArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelFibraWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelFibraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalar, + Iterable<_i2.ContrattoEnelFibraScalar>>? distinct; + + final _i2.ContrattoEnelFibraSelect? select; + + final _i2.ContrattoEnelFibraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +enum ContrattoEnelXAssicurazioneOrderByRelevanceFieldEnum + implements _i1.PrismaEnum { + uuid._('uuid'), + statoContrattoId._('statoContrattoId'), + contrattoUuid._('contrattoUuid'), + domicilioUuid._('domicilioUuid'), + offertaUuid._('offertaUuid'); + + const ContrattoEnelXAssicurazioneOrderByRelevanceFieldEnum._(this.name); + + @override + final String name; +} + +class ContrattoEnelXAssicurazioneOrderByRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneOrderByRelevanceInput({ + required this.fields, + required this.sort, + required this.search, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneOrderByRelevanceFieldEnum, + Iterable<_i2.ContrattoEnelXAssicurazioneOrderByRelevanceFieldEnum>> + fields; + + final _i2.SortOrder sort; + + final String search; + + @override + Map toJson() => { + 'fields': fields, + 'sort': sort, + 'search': search, + }; +} + +class ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + this.$relevance, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput? stato; + + final _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput? contratto; + + final _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput? domicilio; + + final _i2.OffertaOrderByWithRelationAndSearchRelevanceInput? offerta; + + final _i2.ContrattoEnelXAssicurazioneOrderByRelevanceInput? $relevance; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + '_relevance': $relevance, + }; +} + +class ContrattoEnelXAssicurazioneWhereUniqueInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StatoContrattoRelationFilter, + _i2.StatoContrattoWhereInput>? stato; + + final _i1.PrismaUnion<_i2.ContrattoRelationFilter, _i2.ContrattoWhereInput>? + contratto; + + final _i1.PrismaUnion<_i2.DomicilioRelationFilter, _i2.DomicilioWhereInput>? + domicilio; + + final _i1.PrismaUnion<_i2.OffertaNullableRelationFilter, + _i1.PrismaUnion<_i2.OffertaWhereInput, _i1.PrismaNull>>? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +enum ContrattoEnelXAssicurazioneScalar + implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ContrattoEnelXAssicurazione'), + statoContrattoId('statoContrattoId', 'ContrattoEnelXAssicurazione'), + contrattoUuid('contrattoUuid', 'ContrattoEnelXAssicurazione'), + domicilioUuid('domicilioUuid', 'ContrattoEnelXAssicurazione'), + offertaUuid('offertaUuid', 'ContrattoEnelXAssicurazione'); + + const ContrattoEnelXAssicurazioneScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OffertaContrattiEnelXAssicurazioneArgs + implements _i1.JsonConvertible> { + const OffertaContrattiEnelXAssicurazioneArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalar, + Iterable<_i2.ContrattoEnelXAssicurazioneScalar>>? distinct; + + final _i2.ContrattoEnelXAssicurazioneSelect? select; + + final _i2.ContrattoEnelXAssicurazioneInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OffertaWhereUniqueInput + implements _i1.JsonConvertible> { + const OffertaWhereUniqueInput({ + this.uuid, + this.nome, + this.AND, + this.OR, + this.NOT, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String? nome; + + final _i1.PrismaUnion<_i2.OffertaWhereInput, Iterable<_i2.OffertaWhereInput>>? + AND; + + final Iterable<_i2.OffertaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OffertaWhereInput, Iterable<_i2.OffertaWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataFineOfferta; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInizioOfferta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + final _i1 + .PrismaUnion<_i2.ServizioEwoRelationFilter, _i2.ServizioEwoWhereInput>? + servizioEwo; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i2.OffertaListRelationFilter? offerteIncluse; + + final _i2.OffertaListRelationFilter? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +enum OffertaScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Offerta'), + nome('nome', 'Offerta'), + dataFineOfferta('dataFineOfferta', 'Offerta'), + dataInizioOfferta('dataInizioOfferta', 'Offerta'), + servizioEwoId('servizioEwoId', 'Offerta'); + + const OffertaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OffertaOfferteIncluseArgs + implements _i1.JsonConvertible> { + const OffertaOfferteIncluseArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i2.OffertaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OffertaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OffertaScalar, Iterable<_i2.OffertaScalar>>? + distinct; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OffertaInclusaInOfferteArgs + implements _i1.JsonConvertible> { + const OffertaInclusaInOfferteArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i2.OffertaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OffertaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OffertaScalar, Iterable<_i2.OffertaScalar>>? + distinct; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class OffertaCountOutputTypeSelect + implements _i1.JsonConvertible> { + const OffertaCountOutputTypeSelect({ + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final bool? contrattiEnelLuce; + + final bool? contrattiEnelGas; + + final bool? contrattiEnelFibra; + + final bool? contrattiEnelXAssicurazione; + + final bool? offerteIncluse; + + final bool? inclusaInOfferte; + + @override + Map toJson() => { + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCountArgs implements _i1.JsonConvertible> { + const OffertaCountArgs({this.select}); + + final _i2.OffertaCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OffertaInclude implements _i1.JsonConvertible> { + const OffertaInclude({ + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + this.$count, + }); + + final _i1.PrismaUnion? servizioEwo; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? offerteIncluse; + + final _i1.PrismaUnion? + inclusaInOfferte; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + '_count': $count, + }; +} + +class ContrattoEnelGasSelect + implements _i1.JsonConvertible> { + const ContrattoEnelGasSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraGasUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + fornituraGas; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class FornituraGasContrattiEnelGasArgs + implements _i1.JsonConvertible> { + const FornituraGasContrattiEnelGasArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelGasWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelGasWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalar, + Iterable<_i2.ContrattoEnelGasScalar>>? distinct; + + final _i2.ContrattoEnelGasSelect? select; + + final _i2.ContrattoEnelGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class FornituraGasFornituraArgs + implements _i1.JsonConvertible> { + const FornituraGasFornituraArgs({ + this.select, + this.include, + }); + + final _i2.FornituraSelect? select; + + final _i2.FornituraInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class FornituraGasCountOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGasCountOutputTypeSelect({this.contrattiEnelGas}); + + final bool? contrattiEnelGas; + + @override + Map toJson() => {'contrattiEnelGas': contrattiEnelGas}; +} + +class FornituraGasCountArgs + implements _i1.JsonConvertible> { + const FornituraGasCountArgs({this.select}); + + final _i2.FornituraGasCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraGasInclude implements _i1.JsonConvertible> { + const FornituraGasInclude({ + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + this.$count, + }); + + final _i1.PrismaUnion? + classeMisuratore; + + final _i1.PrismaUnion? + consumoAnnuoGas; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? fornitura; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + '_count': $count, + }; +} + +class ClasseMisuratoreGasSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + this.$count, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + final bool? id; + + final bool? classe; + + final _i1.PrismaUnion? + fornituraGas; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + '_count': $count, + }; +} + +class FornituraGasSelect implements _i1.JsonConvertible> { + const FornituraGasSelect({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + this.$count, + }); + + final bool? uuid; + + final bool? pdr; + + final bool? fornituraUuid; + + final bool? classeMisuratoreGasId; + + final bool? matricolaContatore; + + final bool? remi; + + final _i1.PrismaUnion? + classeMisuratore; + + final _i1.PrismaUnion? + consumoAnnuoGas; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? fornitura; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + '_count': $count, + }; +} + +class FornituraFornituraGasArgs + implements _i1.JsonConvertible> { + const FornituraFornituraGasArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.FornituraGasWhereInput? where; + + final _i2.FornituraGasSelect? select; + + final _i2.FornituraGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class FornituraInclude implements _i1.JsonConvertible> { + const FornituraInclude({ + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? servizioEwo; + + final _i1.PrismaUnion? fornituraLuce; + + final _i1.PrismaUnion? fornituraGas; + + @override + Map toJson() => { + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraWhereUniqueInput + implements _i1.JsonConvertible> { + const FornituraWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1 + .PrismaUnion<_i2.FornituraWhereInput, Iterable<_i2.FornituraWhereInput>>? + AND; + + final Iterable<_i2.FornituraWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.FornituraWhereInput, Iterable<_i2.FornituraWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + final _i1.PrismaUnion<_i2.DomicilioRelationFilter, _i2.DomicilioWhereInput>? + domicilio; + + final _i1 + .PrismaUnion<_i2.ServizioEwoRelationFilter, _i2.ServizioEwoWhereInput>? + servizioEwo; + + final _i1.PrismaUnion<_i2.FornituraLuceNullableRelationFilter, + _i1.PrismaUnion<_i2.FornituraLuceWhereInput, _i1.PrismaNull>>? + fornituraLuce; + + final _i1.PrismaUnion<_i2.FornituraGasNullableRelationFilter, + _i1.PrismaUnion<_i2.FornituraGasWhereInput, _i1.PrismaNull>>? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +enum FornituraScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Fornitura'), + etichetta('etichetta', 'Fornitura'), + domicilioUuid('domicilioUuid', 'Fornitura'), + servizioEwoId('servizioEwoId', 'Fornitura'); + + const FornituraScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ServizioEwoFornitureArgs + implements _i1.JsonConvertible> { + const ServizioEwoFornitureArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.FornituraWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i2.FornituraOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.FornituraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.FornituraScalar, Iterable<_i2.FornituraScalar>>? + distinct; + + final _i2.FornituraSelect? select; + + final _i2.FornituraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoPraticaWhereUniqueInput + implements _i1.JsonConvertible> { + const StatoPraticaWhereUniqueInput({ + this.id, + this.AND, + this.OR, + this.NOT, + this.nome, + this.pratiche, + this.serviziEwo, + }); + + final String? id; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, + Iterable<_i2.StatoPraticaWhereInput>>? AND; + + final Iterable<_i2.StatoPraticaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereInput, + Iterable<_i2.StatoPraticaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.PraticaListRelationFilter? pratiche; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +enum StatoPraticaScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'StatoPratica'), + nome('nome', 'StatoPratica'); + + const StatoPraticaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ServizioEwoStatiPossibiliPraticheArgs + implements _i1.JsonConvertible> { + const ServizioEwoStatiPossibiliPraticheArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.StatoPraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.StatoPraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.StatoPraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1 + .PrismaUnion<_i2.StatoPraticaScalar, Iterable<_i2.StatoPraticaScalar>>? + distinct; + + final _i2.StatoPraticaSelect? select; + + final _i2.StatoPraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoWhereUniqueInput + implements _i1.JsonConvertible> { + const StatoContrattoWhereUniqueInput({ + this.id, + this.AND, + this.OR, + this.NOT, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? id; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereInput, + Iterable<_i2.StatoContrattoWhereInput>>? AND; + + final Iterable<_i2.StatoContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereInput, + Iterable<_i2.StatoContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i2.ContrattoListRelationFilter? contratti; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i2.ContrattoEnelGasListRelationFilter? contrattiEnelGas; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +enum StatoContrattoScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'StatoContratto'), + nome('nome', 'StatoContratto'); + + const StatoContrattoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ServizioEwoStatiPossibiliContrattiArgs + implements _i1.JsonConvertible> { + const ServizioEwoStatiPossibiliContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.StatoContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.StatoContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.StatoContrattoScalar, + Iterable<_i2.StatoContrattoScalar>>? distinct; + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ServizioEwoOfferteArgs + implements _i1.JsonConvertible> { + const ServizioEwoOfferteArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OffertaOrderByWithRelationAndSearchRelevanceInput>, + _i2.OffertaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OffertaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OffertaScalar, Iterable<_i2.OffertaScalar>>? + distinct; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ServizioEwoModuliContrattoArgs + implements _i1.JsonConvertible> { + const ServizioEwoModuliContrattoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ModuloContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ModuloContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ModuloContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalar, + Iterable<_i2.ModuloContrattoScalar>>? distinct; + + final _i2.ModuloContrattoSelect? select; + + final _i2.ModuloContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ServizioEwoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ServizioEwoCountOutputTypeSelect({ + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final bool? tipiPratiche; + + final bool? forniture; + + final bool? statiPossibiliPratiche; + + final bool? statiPossibiliContratti; + + final bool? offerte; + + final bool? moduliContratto; + + @override + Map toJson() => { + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCountArgs + implements _i1.JsonConvertible> { + const ServizioEwoCountArgs({this.select}); + + final _i2.ServizioEwoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ServizioEwoInclude implements _i1.JsonConvertible> { + const ServizioEwoInclude({ + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + this.$count, + }); + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipiPratiche; + + final _i1.PrismaUnion? forniture; + + final _i1.PrismaUnion? + statiPossibiliPratiche; + + final _i1.PrismaUnion? + statiPossibiliContratti; + + final _i1.PrismaUnion? offerte; + + final _i1.PrismaUnion? + moduliContratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + '_count': $count, + }; +} + +class FornitoreSelect implements _i1.JsonConvertible> { + const FornitoreSelect({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? + moduliContratto; + + final _i1.PrismaUnion? prodotti; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + '_count': $count, + }; +} + +class ServizioEwoSelect implements _i1.JsonConvertible> { + const ServizioEwoSelect({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? tipoServizioEwo; + + final bool? colore; + + final bool? icona; + + final _i1.PrismaUnion? fornitore; + + final _i1.PrismaUnion? tipiPratiche; + + final _i1.PrismaUnion? forniture; + + final _i1.PrismaUnion? + statiPossibiliPratiche; + + final _i1.PrismaUnion? + statiPossibiliContratti; + + final _i1.PrismaUnion? offerte; + + final _i1.PrismaUnion? + moduliContratto; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + '_count': $count, + }; +} + +class OffertaSelect implements _i1.JsonConvertible> { + const OffertaSelect({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + this.$count, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataFineOfferta; + + final bool? dataInizioOfferta; + + final bool? servizioEwoId; + + final _i1.PrismaUnion? servizioEwo; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? offerteIncluse; + + final _i1.PrismaUnion? + inclusaInOfferte; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + '_count': $count, + }; +} + +class ContrattoEnelXAssicurazioneOffertaArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneOffertaArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelXAssicurazioneInclude + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneInclude({ + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + contratto; + + final _i1.PrismaUnion? + domicilio; + + final _i1.PrismaUnion? + offerta; + + @override + Map toJson() => { + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class DomicilioContrattiEnelXAssicurazioneArgs + implements _i1.JsonConvertible> { + const DomicilioContrattiEnelXAssicurazioneArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalar, + Iterable<_i2.ContrattoEnelXAssicurazioneScalar>>? distinct; + + final _i2.ContrattoEnelXAssicurazioneSelect? select; + + final _i2.ContrattoEnelXAssicurazioneInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class DomicilioFornitureArgs + implements _i1.JsonConvertible> { + const DomicilioFornitureArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.FornituraWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.FornituraOrderByWithRelationAndSearchRelevanceInput>, + _i2.FornituraOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.FornituraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.FornituraScalar, Iterable<_i2.FornituraScalar>>? + distinct; + + final _i2.FornituraSelect? select; + + final _i2.FornituraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class DomicilioContrattiEnelFibraArgs + implements _i1.JsonConvertible> { + const DomicilioContrattiEnelFibraArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelFibraWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelFibraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalar, + Iterable<_i2.ContrattoEnelFibraScalar>>? distinct; + + final _i2.ContrattoEnelFibraSelect? select; + + final _i2.ContrattoEnelFibraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class DomicilioProdottiOrdinatiArgs + implements _i1.JsonConvertible> { + const DomicilioProdottiOrdinatiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class DomicilioLeadsArgs implements _i1.JsonConvertible> { + const DomicilioLeadsArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class DomicilioCountOutputTypeSelect + implements _i1.JsonConvertible> { + const DomicilioCountOutputTypeSelect({ + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final bool? contrattiEnelXAssicurazione; + + final bool? forniture; + + final bool? contrattiEnelFibra; + + final bool? prodottiOrdinati; + + final bool? leads; + + @override + Map toJson() => { + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCountArgs implements _i1.JsonConvertible> { + const DomicilioCountArgs({this.select}); + + final _i2.DomicilioCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class DomicilioInclude implements _i1.JsonConvertible> { + const DomicilioInclude({ + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + this.$count, + }); + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? forniture; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + '_count': $count, + }; +} + +class FornituraSelect implements _i1.JsonConvertible> { + const FornituraSelect({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? domicilioUuid; + + final bool? servizioEwoId; + + final _i1.PrismaUnion? domicilio; + + final _i1.PrismaUnion? servizioEwo; + + final _i1.PrismaUnion? fornituraLuce; + + final _i1.PrismaUnion? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraLuceFornituraArgs + implements _i1.JsonConvertible> { + const FornituraLuceFornituraArgs({ + this.select, + this.include, + }); + + final _i2.FornituraSelect? select; + + final _i2.FornituraInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class FornituraLuceCountOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceCountOutputTypeSelect({this.contrattiEnelLuce}); + + final bool? contrattiEnelLuce; + + @override + Map toJson() => {'contrattiEnelLuce': contrattiEnelLuce}; +} + +class FornituraLuceCountArgs + implements _i1.JsonConvertible> { + const FornituraLuceCountArgs({this.select}); + + final _i2.FornituraLuceCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceInclude + implements _i1.JsonConvertible> { + const FornituraLuceInclude({ + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + this.$count, + }); + + final _i1.PrismaUnion? + consumoAnnuoLuce; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? fornitura; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + '_count': $count, + }; +} + +class ConsumoAnnuoLuceSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.fornituraLuce, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraLuceUuid; + + final _i1.PrismaUnion? + fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + 'fornituraLuce': fornituraLuce, + }; +} + +class FornituraLuceSelect implements _i1.JsonConvertible> { + const FornituraLuceSelect({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + this.$count, + }); + + final bool? uuid; + + final bool? pod; + + final bool? fornituraUuid; + + final bool? potenza; + + final bool? tensione; + + final _i1.PrismaUnion? + consumoAnnuoLuce; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? fornitura; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + '_count': $count, + }; +} + +class ContrattoEnelLuceFornituraLuceArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceFornituraLuceArgs({ + this.select, + this.include, + }); + + final _i2.FornituraLuceSelect? select; + + final _i2.FornituraLuceInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelLuceContrattoArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceContrattoArgs({ + this.select, + this.include, + }); + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelLuceOffertaArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceOffertaArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.OffertaWhereInput? where; + + final _i2.OffertaSelect? select; + + final _i2.OffertaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoEnelLuceInclude + implements _i1.JsonConvertible> { + const ContrattoEnelLuceInclude({ + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + fornituraLuce; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + @override + Map toJson() => { + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoContrattiEnelLuceArgs + implements _i1.JsonConvertible> { + const ContrattoContrattiEnelLuceArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelLuceWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelLuceWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalar, + Iterable<_i2.ContrattoEnelLuceScalar>>? distinct; + + final _i2.ContrattoEnelLuceSelect? select; + + final _i2.ContrattoEnelLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoContrattiEnelGasArgs + implements _i1.JsonConvertible> { + const ContrattoContrattiEnelGasArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelGasWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelGasWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalar, + Iterable<_i2.ContrattoEnelGasScalar>>? distinct; + + final _i2.ContrattoEnelGasSelect? select; + + final _i2.ContrattoEnelGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoContrattiEnelFibraArgs + implements _i1.JsonConvertible> { + const ContrattoContrattiEnelFibraArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelFibraWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelFibraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalar, + Iterable<_i2.ContrattoEnelFibraScalar>>? distinct; + + final _i2.ContrattoEnelFibraSelect? select; + + final _i2.ContrattoEnelFibraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoContrattiEnelXAssicurazioneArgs + implements _i1.JsonConvertible> { + const ContrattoContrattiEnelXAssicurazioneArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalar, + Iterable<_i2.ContrattoEnelXAssicurazioneScalar>>? distinct; + + final _i2.ContrattoEnelXAssicurazioneSelect? select; + + final _i2.ContrattoEnelXAssicurazioneInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class ContrattoStatoArgs implements _i1.JsonConvertible> { + const ContrattoStatoArgs({ + this.select, + this.include, + }); + + final _i2.StatoContrattoSelect? select; + + final _i2.StatoContrattoInclude? include; + + @override + Map toJson() => { + 'select': select, + 'include': include, + }; +} + +class ContrattoSoggettoArgs + implements _i1.JsonConvertible> { + const ContrattoSoggettoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoUtenteArgs implements _i1.JsonConvertible> { + const ContrattoUtenteArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.UtenteWhereInput? where; + + final _i2.UtenteSelect? select; + + final _i2.UtenteInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoNegozioArgs + implements _i1.JsonConvertible> { + const ContrattoNegozioArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoPraticaArgs + implements _i1.JsonConvertible> { + const ContrattoPraticaArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoModuloArgs implements _i1.JsonConvertible> { + const ContrattoModuloArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.ModuloContrattoWhereInput? where; + + final _i2.ModuloContrattoSelect? select; + + final _i2.ModuloContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class ContrattoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoCountOutputTypeSelect({ + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final bool? contrattiEnelLuce; + + final bool? contrattiEnelGas; + + final bool? contrattiEnelFibra; + + final bool? contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCountArgs implements _i1.JsonConvertible> { + const ContrattoCountArgs({this.select}); + + final _i2.ContrattoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoInclude implements _i1.JsonConvertible> { + const ContrattoInclude({ + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + this.$count, + }); + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? pratica; + + final _i1.PrismaUnion? modulo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + '_count': $count, + }; +} + +class StatoContrattoContrattiArgs + implements _i1.JsonConvertible> { + const StatoContrattoContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoServiziEwoArgs + implements _i1.JsonConvertible> { + const StatoContrattoServiziEwoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ServizioEwoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ServizioEwoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ServizioEwoScalar, Iterable<_i2.ServizioEwoScalar>>? + distinct; + + final _i2.ServizioEwoSelect? select; + + final _i2.ServizioEwoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoContrattiEnelLuceArgs + implements _i1.JsonConvertible> { + const StatoContrattoContrattiEnelLuceArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelLuceWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelLuceOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelLuceWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalar, + Iterable<_i2.ContrattoEnelLuceScalar>>? distinct; + + final _i2.ContrattoEnelLuceSelect? select; + + final _i2.ContrattoEnelLuceInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoContrattiEnelGasArgs + implements _i1.JsonConvertible> { + const StatoContrattoContrattiEnelGasArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelGasWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelGasOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoEnelGasWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalar, + Iterable<_i2.ContrattoEnelGasScalar>>? distinct; + + final _i2.ContrattoEnelGasSelect? select; + + final _i2.ContrattoEnelGasInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoContrattiEnelFibraArgs + implements _i1.JsonConvertible> { + const StatoContrattoContrattiEnelFibraArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelFibraWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoEnelFibraOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelFibraWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalar, + Iterable<_i2.ContrattoEnelFibraScalar>>? distinct; + + final _i2.ContrattoEnelFibraSelect? select; + + final _i2.ContrattoEnelFibraInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoContrattiEnelXAssicurazioneArgs + implements _i1.JsonConvertible> { + const StatoContrattoContrattiEnelXAssicurazioneArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereInput? where; + + final _i1.PrismaUnion< + Iterable< + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>, + _i2 + .ContrattoEnelXAssicurazioneOrderByWithRelationAndSearchRelevanceInput>? + orderBy; + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalar, + Iterable<_i2.ContrattoEnelXAssicurazioneScalar>>? distinct; + + final _i2.ContrattoEnelXAssicurazioneSelect? select; + + final _i2.ContrattoEnelXAssicurazioneInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class StatoContrattoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoContrattoCountOutputTypeSelect({ + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final bool? contratti; + + final bool? serviziEwo; + + final bool? contrattiEnelLuce; + + final bool? contrattiEnelGas; + + final bool? contrattiEnelFibra; + + final bool? contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCountArgs + implements _i1.JsonConvertible> { + const StatoContrattoCountArgs({this.select}); + + final _i2.StatoContrattoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoContrattoInclude + implements _i1.JsonConvertible> { + const StatoContrattoInclude({ + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.$count, + }); + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1 + .PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + '_count': $count, + }; +} + +class ContrattoEnelLuceSelect + implements _i1.JsonConvertible> { + const ContrattoEnelLuceSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraLuceUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + fornituraLuce; + + final _i1.PrismaUnion? contratto; + + final _i1.PrismaUnion? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoSelect implements _i1.JsonConvertible> { + const ContrattoSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + this.$count, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? dataAttivazione; + + final bool? ultimoAggiornamentoStato; + + final bool? trend; + + final bool? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final bool? dataCessazione; + + final bool? mesiDurata; + + final bool? offertaUuid; + + final bool? statoContrattoId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? praticaUuid; + + final bool? moduloContrattoId; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? utente; + + final _i1.PrismaUnion? negozio; + + final _i1.PrismaUnion? pratica; + + final _i1.PrismaUnion? modulo; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + '_count': $count, + }; +} + +class StatoContrattoSelect + implements _i1.JsonConvertible> { + const StatoContrattoSelect({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.$count, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? serviziEwo; + + final _i1.PrismaUnion? + contrattiEnelLuce; + + final _i1.PrismaUnion? + contrattiEnelGas; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1 + .PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + '_count': $count, + }; +} + +class ContrattoEnelXAssicurazioneSelect + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? stato; + + final _i1.PrismaUnion? + contratto; + + final _i1.PrismaUnion? + domicilio; + + final _i1.PrismaUnion? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class DomicilioSelect implements _i1.JsonConvertible> { + const DomicilioSelect({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + this.$count, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? indirizzo; + + final bool? numeroCivico; + + final bool? citta; + + final bool? cap; + + final bool? provincia; + + final bool? soggettoUuid; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? + contrattiEnelXAssicurazione; + + final _i1.PrismaUnion? forniture; + + final _i1.PrismaUnion? + contrattiEnelFibra; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + '_count': $count, + }; +} + +class DomicilioWhereUniqueInput + implements _i1.JsonConvertible> { + const DomicilioWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1 + .PrismaUnion<_i2.DomicilioWhereInput, Iterable<_i2.DomicilioWhereInput>>? + AND; + + final Iterable<_i2.DomicilioWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.DomicilioWhereInput, Iterable<_i2.DomicilioWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? numeroCivico; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? citta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? cap; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? provincia; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + final _i2.ContrattoEnelXAssicurazioneListRelationFilter? + contrattiEnelXAssicurazione; + + final _i2.FornituraListRelationFilter? forniture; + + final _i2.ContrattoEnelFibraListRelationFilter? contrattiEnelFibra; + + final _i2.OrdineListRelationFilter? prodottiOrdinati; + + final _i2.LeadListRelationFilter? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +enum DomicilioScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Domicilio'), + etichetta('etichetta', 'Domicilio'), + indirizzo('indirizzo', 'Domicilio'), + numeroCivico('numeroCivico', 'Domicilio'), + citta('citta', 'Domicilio'), + cap('cap', 'Domicilio'), + provincia('provincia', 'Domicilio'), + soggettoUuid('soggettoUuid', 'Domicilio'); + + const DomicilioScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class SoggettoDomiciliArgs + implements _i1.JsonConvertible> { + const SoggettoDomiciliArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.DomicilioOrderByWithRelationAndSearchRelevanceInput>, + _i2.DomicilioOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.DomicilioWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.DomicilioScalar, Iterable<_i2.DomicilioScalar>>? + distinct; + + final _i2.DomicilioSelect? select; + + final _i2.DomicilioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class SoggettoPraticheIntestateArgs + implements _i1.JsonConvertible> { + const SoggettoPraticheIntestateArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.PraticaOrderByWithRelationAndSearchRelevanceInput>, + _i2.PraticaOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.PraticaWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.PraticaScalar, Iterable<_i2.PraticaScalar>>? + distinct; + + final _i2.PraticaSelect? select; + + final _i2.PraticaInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class SoggettoContrattiArgs + implements _i1.JsonConvertible> { + const SoggettoContrattiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>, + _i2.ContrattoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.ContrattoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.ContrattoScalar, Iterable<_i2.ContrattoScalar>>? + distinct; + + final _i2.ContrattoSelect? select; + + final _i2.ContrattoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class IndirizzoEmailIndirizzoSoggettoUuidCompoundUniqueInput + implements _i1.JsonConvertible> { + const IndirizzoEmailIndirizzoSoggettoUuidCompoundUniqueInput({ + required this.indirizzo, + required this.soggettoUuid, + }); + + final String indirizzo; + + final String soggettoUuid; + + @override + Map toJson() => { + 'indirizzo': indirizzo, + 'soggettoUuid': soggettoUuid, + }; +} + +class IndirizzoEmailWhereUniqueInput + implements _i1.JsonConvertible> { + const IndirizzoEmailWhereUniqueInput({ + this.uuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.indirizzoSoggettoUuid, + this.AND, + this.OR, + this.NOT, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final String? uuid; + + final String? legaleRappresentanteUuid; + + final String? referenteUuid; + + final _i2.IndirizzoEmailIndirizzoSoggettoUuidCompoundUniqueInput? + indirizzoSoggettoUuid; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, + Iterable<_i2.IndirizzoEmailWhereInput>>? AND; + + final Iterable<_i2.IndirizzoEmailWhereInput>? OR; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, + Iterable<_i2.IndirizzoEmailWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + 'indirizzo_soggettoUuid': indirizzoSoggettoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +enum IndirizzoEmailScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'IndirizzoEmail'), + indirizzo('indirizzo', 'IndirizzoEmail'), + etichetta('etichetta', 'IndirizzoEmail'), + soggettoUuid('soggettoUuid', 'IndirizzoEmail'), + legaleRappresentanteUuid( + 'legaleRappresentanteUuid', 'IndirizzoEmail'), + referenteUuid('referenteUuid', 'IndirizzoEmail'); + + const IndirizzoEmailScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class SoggettoIndirizziEmailArgs + implements _i1.JsonConvertible> { + const SoggettoIndirizziEmailArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.IndirizzoEmailWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>, + _i2.IndirizzoEmailOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.IndirizzoEmailWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalar, + Iterable<_i2.IndirizzoEmailScalar>>? distinct; + + final _i2.IndirizzoEmailSelect? select; + + final _i2.IndirizzoEmailInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class NumeroTelefonoNumeroSoggettoUuidCompoundUniqueInput + implements _i1.JsonConvertible> { + const NumeroTelefonoNumeroSoggettoUuidCompoundUniqueInput({ + required this.numero, + required this.soggettoUuid, + }); + + final String numero; + + final String soggettoUuid; + + @override + Map toJson() => { + 'numero': numero, + 'soggettoUuid': soggettoUuid, + }; +} + +class NumeroTelefonoWhereUniqueInput + implements _i1.JsonConvertible> { + const NumeroTelefonoWhereUniqueInput({ + this.uuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.numeroSoggettoUuid, + this.AND, + this.OR, + this.NOT, + this.numero, + this.etichetta, + this.soggettoUuid, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final String? uuid; + + final String? legaleRappresentateUuid; + + final String? referenteUuid; + + final _i2.NumeroTelefonoNumeroSoggettoUuidCompoundUniqueInput? + numeroSoggettoUuid; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, + Iterable<_i2.NumeroTelefonoWhereInput>>? AND; + + final Iterable<_i2.NumeroTelefonoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, + Iterable<_i2.NumeroTelefonoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? numero; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentate; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + 'numero_soggettoUuid': numeroSoggettoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +enum NumeroTelefonoScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'NumeroTelefono'), + numero('numero', 'NumeroTelefono'), + etichetta('etichetta', 'NumeroTelefono'), + soggettoUuid('soggettoUuid', 'NumeroTelefono'), + legaleRappresentateUuid('legaleRappresentateUuid', 'NumeroTelefono'), + referenteUuid('referenteUuid', 'NumeroTelefono'); + + const NumeroTelefonoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class SoggettoNumeriTelefonoArgs + implements _i1.JsonConvertible> { + const SoggettoNumeriTelefonoArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.NumeroTelefonoWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>, + _i2.NumeroTelefonoOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.NumeroTelefonoWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalar, + Iterable<_i2.NumeroTelefonoScalar>>? distinct; + + final _i2.NumeroTelefonoSelect? select; + + final _i2.NumeroTelefonoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class SoggettoNegozioPreferitoArgs + implements _i1.JsonConvertible> { + const SoggettoNegozioPreferitoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.NegozioWhereInput? where; + + final _i2.NegozioSelect? select; + + final _i2.NegozioInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class SoggettoProdottiOrdinatiArgs + implements _i1.JsonConvertible> { + const SoggettoProdottiOrdinatiArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.OrdineWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.OrdineOrderByWithRelationAndSearchRelevanceInput>, + _i2.OrdineOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.OrdineWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.OrdineScalar, Iterable<_i2.OrdineScalar>>? distinct; + + final _i2.OrdineSelect? select; + + final _i2.OrdineInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class SoggettoLeadsArgs implements _i1.JsonConvertible> { + const SoggettoLeadsArgs({ + this.where, + this.orderBy, + this.cursor, + this.take, + this.skip, + this.distinct, + this.select, + this.include, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion< + Iterable<_i2.LeadOrderByWithRelationAndSearchRelevanceInput>, + _i2.LeadOrderByWithRelationAndSearchRelevanceInput>? orderBy; + + final _i2.LeadWhereUniqueInput? cursor; + + final int? take; + + final int? skip; + + final _i1.PrismaUnion<_i2.LeadScalar, Iterable<_i2.LeadScalar>>? distinct; + + final _i2.LeadSelect? select; + + final _i2.LeadInclude? include; + + @override + Map toJson() => { + 'where': where, + 'orderBy': orderBy, + 'cursor': cursor, + 'take': take, + 'skip': skip, + 'distinct': distinct, + 'select': select, + 'include': include, + }; +} + +class PrivacySoggettoArgs implements _i1.JsonConvertible> { + const PrivacySoggettoArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.SoggettoWhereInput? where; + + final _i2.SoggettoSelect? select; + + final _i2.SoggettoInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class PrivacySelect implements _i1.JsonConvertible> { + const PrivacySelect({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.soggetto, + }); + + final bool? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final bool? soggettoUuid; + + final _i1.PrismaUnion? soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + 'soggetto': soggetto, + }; +} + +class PrivacyInclude implements _i1.JsonConvertible> { + const PrivacyInclude({this.soggetto}); + + final _i1.PrismaUnion? soggetto; + + @override + Map toJson() => {'soggetto': soggetto}; +} + +class SoggettoPrivacyArgs implements _i1.JsonConvertible> { + const SoggettoPrivacyArgs({ + this.where, + this.select, + this.include, + }); + + final _i2.PrivacyWhereInput? where; + + final _i2.PrivacySelect? select; + + final _i2.PrivacyInclude? include; + + @override + Map toJson() => { + 'where': where, + 'select': select, + 'include': include, + }; +} + +class SoggettoCountOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoCountOutputTypeSelect({ + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + }); + + final bool? domicili; + + final bool? praticheIntestate; + + final bool? contratti; + + final bool? indirizziEmail; + + final bool? numeriTelefono; + + final bool? prodottiOrdinati; + + final bool? leads; + + @override + Map toJson() => { + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class SoggettoCountArgs implements _i1.JsonConvertible> { + const SoggettoCountArgs({this.select}); + + final _i2.SoggettoCountOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoInclude implements _i1.JsonConvertible> { + const SoggettoInclude({ + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + this.$count, + }); + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + final _i1.PrismaUnion? domicili; + + final _i1.PrismaUnion? + praticheIntestate; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? indirizziEmail; + + final _i1.PrismaUnion? numeriTelefono; + + final _i1.PrismaUnion? + negozioPreferito; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? privacy; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + '_count': $count, + }; +} + +class NumeroTelefonoSelect + implements _i1.JsonConvertible> { + const NumeroTelefonoSelect({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final bool? uuid; + + final bool? numero; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentateUuid; + + final bool? referenteUuid; + + final _i1.PrismaUnion? soggetto; + + final _i1.PrismaUnion? + legaleRappresentate; + + final _i1.PrismaUnion? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class LegaleRappresentanteSelect + implements _i1.JsonConvertible> { + const LegaleRappresentanteSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion? + numeroTelefono; + + final _i1.PrismaUnion? + indirizzoEmail; + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class SoggettoBusinessInfoSelect + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoSelect({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + final bool? uuid; + + final bool? rea; + + final bool? partitaIVA; + + final bool? sdi; + + final bool? soggettoUuid; + + final _i1.PrismaUnion? + legaleRappresentante; + + final _i1.PrismaUnion? referente; + + final _i1.PrismaUnion? soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoSelect implements _i1.JsonConvertible> { + const SoggettoSelect({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + this.$count, + }); + + final bool? uuid; + + final bool? ragioneSociale; + + final bool? iban; + + final bool? tipo; + + final bool? negozioPreferitoUuid; + + final bool? codiceFiscale; + + final bool? note; + + final _i1.PrismaUnion? + soggettoBusinessInfo; + + final _i1.PrismaUnion? domicili; + + final _i1.PrismaUnion? + praticheIntestate; + + final _i1.PrismaUnion? contratti; + + final _i1.PrismaUnion? indirizziEmail; + + final _i1.PrismaUnion? numeriTelefono; + + final _i1.PrismaUnion? + negozioPreferito; + + final _i1.PrismaUnion? + prodottiOrdinati; + + final _i1.PrismaUnion? leads; + + final _i1.PrismaUnion? privacy; + + final _i1.PrismaUnion? $count; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + '_count': $count, + }; +} + +class ConsumoAnnuoLuceCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCreateWithoutFornituraLuceInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoLuceWhereUniqueInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceWhereUniqueInput({ + this.uuid, + this.fornituraLuceUuid, + this.AND, + this.OR, + this.NOT, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuce, + }); + + final String? uuid; + + final String? fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, + Iterable<_i2.ConsumoAnnuoLuceWhereInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, + Iterable<_i2.ConsumoAnnuoLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion<_i2.FornituraLuceRelationFilter, + _i2.FornituraLuceWhereInput>? fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuceUuid': fornituraLuceUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuce': fornituraLuce, + }; +} + +class ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput({ + required this.where, + required this.create, + }); + + final _i2.ConsumoAnnuoLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ConsumoAnnuoLuceCreateNestedOneWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCreateNestedOneWithoutFornituraLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput? + connectOrCreate; + + final _i2.ConsumoAnnuoLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ClasseMisuratoreGasCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCreateWithoutFornituraGasInput({ + required this.portataMin, + required this.portataNominale, + required this.portataMax, + required this.id, + required this.classe, + }); + + final double portataMin; + + final double portataNominale; + + final double portataMax; + + final String id; + + final String classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput({ + required this.portataMin, + required this.portataNominale, + required this.portataMax, + required this.id, + required this.classe, + }); + + final double portataMin; + + final double portataNominale; + + final double portataMax; + + final String id; + + final String classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasWhereUniqueInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasWhereUniqueInput({ + this.id, + this.classe, + this.AND, + this.OR, + this.NOT, + this.portataMin, + this.portataNominale, + this.portataMax, + this.fornituraGas, + }); + + final String? id; + + final String? classe; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, + Iterable<_i2.ClasseMisuratoreGasWhereInput>>? AND; + + final Iterable<_i2.ClasseMisuratoreGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasWhereInput, + Iterable<_i2.ClasseMisuratoreGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataMin; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataNominale; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? portataMax; + + final _i2.FornituraGasListRelationFilter? fornituraGas; + + @override + Map toJson() => { + 'id': id, + 'classe': classe, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'fornituraGas': fornituraGas, + }; +} + +class ClasseMisuratoreGasCreateOrConnectWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCreateOrConnectWithoutFornituraGasInput({ + required this.where, + required this.create, + }); + + final _i2.ClasseMisuratoreGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasCreateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasCreateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ClasseMisuratoreGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ClasseMisuratoreGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ConsumoAnnuoGasCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCreateWithoutFornituraGasInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoGasWhereUniqueInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasWhereUniqueInput({ + this.uuid, + this.fornituraGasUuid, + this.AND, + this.OR, + this.NOT, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGas, + }); + + final String? uuid; + + final String? fornituraGasUuid; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, + Iterable<_i2.ConsumoAnnuoGasWhereInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoGasWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasWhereInput, + Iterable<_i2.ConsumoAnnuoGasWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1 + .PrismaUnion<_i2.FornituraGasRelationFilter, _i2.FornituraGasWhereInput>? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGasUuid': fornituraGasUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGas': fornituraGas, + }; +} + +class ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput({ + required this.where, + required this.create, + }); + + final _i2.ConsumoAnnuoGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ConsumoAnnuoGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ReferenteCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutReferenteInput? numeroTelefono; + + final _i2.IndirizzoEmailCreateNestedOneWithoutReferenteInput? indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class NumeroTelefonoUncheckedCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateWithoutReferenteInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentateUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + }; +} + +class NumeroTelefonoCreateOrConnectWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateOrConnectWithoutReferenteInput({ + required this.where, + required this.create, + }); + + final _i2.NumeroTelefonoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NumeroTelefonoUncheckedCreateNestedOneWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateNestedOneWithoutReferenteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IndirizzoEmailUncheckedCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateWithoutReferenteInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentanteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + }; +} + +class IndirizzoEmailCreateOrConnectWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateOrConnectWithoutReferenteInput({ + required this.where, + required this.create, + }); + + final _i2.IndirizzoEmailWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class IndirizzoEmailUncheckedCreateNestedOneWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateNestedOneWithoutReferenteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput>? create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoUncheckedCreateNestedOneWithoutReferenteInput? + numeroTelefono; + + final _i2.IndirizzoEmailUncheckedCreateNestedOneWithoutReferenteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteWhereUniqueInput + implements _i1.JsonConvertible> { + const ReferenteWhereUniqueInput({ + this.uuid, + this.soggettoBusinessInfoUuid, + this.AND, + this.OR, + this.NOT, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String? soggettoBusinessInfoUuid; + + final _i1 + .PrismaUnion<_i2.ReferenteWhereInput, Iterable<_i2.ReferenteWhereInput>>? + AND; + + final Iterable<_i2.ReferenteWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.ReferenteWhereInput, Iterable<_i2.ReferenteWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.NumeroTelefonoNullableRelationFilter, + _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>>? + numeroTelefono; + + final _i1.PrismaUnion<_i2.IndirizzoEmailNullableRelationFilter, + _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>>? + indirizzoEmail; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoRelationFilter, + _i2.SoggettoBusinessInfoWhereInput>? soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput({ + required this.where, + required this.create, + }); + + final _i2.ReferenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ReferenteCreateNestedOneWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteCreateNestedOneWithoutSoggettoBusinessInfoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.ReferenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ProduttoreCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreCreateWithoutProdottiInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreUncheckedCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreUncheckedCreateWithoutProdottiInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreWhereUniqueInput + implements _i1.JsonConvertible> { + const ProduttoreWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.prodotti, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.ProduttoreWhereInput, + Iterable<_i2.ProduttoreWhereInput>>? AND; + + final Iterable<_i2.ProduttoreWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ProduttoreWhereInput, + Iterable<_i2.ProduttoreWhereInput>>? NOT; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'prodotti': prodotti, + }; +} + +class ProduttoreCreateOrConnectWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreCreateOrConnectWithoutProdottiInput({ + required this.where, + required this.create, + }); + + final _i2.ProduttoreWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProduttoreCreateWithoutProdottiInput, + _i2.ProduttoreUncheckedCreateWithoutProdottiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ProduttoreCreateNestedOneWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreCreateNestedOneWithoutProdottiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ProduttoreCreateWithoutProdottiInput, + _i2.ProduttoreUncheckedCreateWithoutProdottiInput>? create; + + final _i2.ProduttoreCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.ProduttoreWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateWithoutOffertaInput({ + this.uuid, + required this.stato, + required this.fornituraLuce, + required this.contratto, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput stato; + + final _i2.FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput + fornituraLuce; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelLuceInput contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + }; +} + +class ContrattoEnelLuceUncheckedCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateWithoutOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + required this.contrattoUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelLuceCreateOrConnectWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateOrConnectWithoutOffertaInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelLuceCreateManyOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + required this.contrattoUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelLuceCreateManyOffertaInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyOffertaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateManyOffertaInput, + Iterable<_i2.ContrattoEnelLuceCreateManyOffertaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelLuceCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelGasCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateWithoutOffertaInput({ + this.uuid, + required this.stato, + required this.fornituraGas, + required this.contratto, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput stato; + + final _i2.FornituraGasCreateNestedOneWithoutContrattiEnelGasInput + fornituraGas; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelGasInput contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + }; +} + +class ContrattoEnelGasUncheckedCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateWithoutOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + required this.contrattoUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final String contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelGasCreateOrConnectWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateOrConnectWithoutOffertaInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelGasCreateManyOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + required this.contrattoUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final String contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelGasCreateManyOffertaInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyOffertaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateManyOffertaInput, + Iterable<_i2.ContrattoEnelGasCreateManyOffertaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelGasCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ZonaNegozioCreateWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioCreateWithoutNegoziInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioUncheckedCreateWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioUncheckedCreateWithoutNegoziInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioWhereUniqueInput + implements _i1.JsonConvertible> { + const ZonaNegozioWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.negozi, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.ZonaNegozioWhereInput, + Iterable<_i2.ZonaNegozioWhereInput>>? AND; + + final Iterable<_i2.ZonaNegozioWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ZonaNegozioWhereInput, + Iterable<_i2.ZonaNegozioWhereInput>>? NOT; + + final _i2.NegozioListRelationFilter? negozi; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'negozi': negozi, + }; +} + +class ZonaNegozioCreateOrConnectWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioCreateOrConnectWithoutNegoziInput({ + required this.where, + required this.create, + }); + + final _i2.ZonaNegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ZonaNegozioCreateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedCreateWithoutNegoziInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ZonaNegozioCreateNestedOneWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioCreateNestedOneWithoutNegoziInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioCreateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedCreateWithoutNegoziInput>? create; + + final _i2.ZonaNegozioCreateOrConnectWithoutNegoziInput? connectOrCreate; + + final _i2.ZonaNegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PrivacyCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyCreateWithoutSoggettoInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + }); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + }; +} + +class PrivacyUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedCreateWithoutSoggettoInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + }); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + }; +} + +class PrivacyWhereUniqueInput + implements _i1.JsonConvertible> { + const PrivacyWhereUniqueInput({ + this.uuid, + this.soggettoUuid, + this.AND, + this.OR, + this.NOT, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggetto, + }); + + final String? uuid; + + final String? soggettoUuid; + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, Iterable<_i2.PrivacyWhereInput>>? + AND; + + final Iterable<_i2.PrivacyWhereInput>? OR; + + final _i1.PrismaUnion<_i2.PrivacyWhereInput, Iterable<_i2.PrivacyWhereInput>>? + NOT; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? trattamento; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? comunicazione; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? profilazione; + + final _i1.PrismaUnion<_i2.SoggettoNullableRelationFilter, + _i1.PrismaUnion<_i2.SoggettoWhereInput, _i1.PrismaNull>>? soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoUuid': soggettoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggetto': soggetto, + }; +} + +class PrivacyCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.PrivacyWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PrivacyCreateNestedOneWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyCreateNestedOneWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.PrivacyCreateOrConnectWithoutSoggettoInput? connectOrCreate; + + final _i2.PrivacyWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutLeadsInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'privacy': privacy, + }; +} + +class NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggettoUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput({ + required this.where, + required this.create, + }); + + final _i2.NumeroTelefonoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NumeroTelefonoUncheckedCreateNestedOneWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateNestedOneWithoutLegaleRappresentateInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput? + connectOrCreate; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput({ + required this.where, + required this.create, + }); + + final _i2.IndirizzoEmailWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class IndirizzoEmailUncheckedCreateNestedOneWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateNestedOneWithoutLegaleRappresentanteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2 + .NumeroTelefonoUncheckedCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + final _i2 + .IndirizzoEmailUncheckedCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteWhereUniqueInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteWhereUniqueInput({ + this.uuid, + this.soggettoBusinessInfoUuid, + this.AND, + this.OR, + this.NOT, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, + Iterable<_i2.LegaleRappresentanteWhereInput>>? AND; + + final Iterable<_i2.LegaleRappresentanteWhereInput>? OR; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, + Iterable<_i2.LegaleRappresentanteWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.NumeroTelefonoNullableRelationFilter, + _i1.PrismaUnion<_i2.NumeroTelefonoWhereInput, _i1.PrismaNull>>? + numeroTelefono; + + final _i1.PrismaUnion<_i2.IndirizzoEmailNullableRelationFilter, + _i1.PrismaUnion<_i2.IndirizzoEmailWhereInput, _i1.PrismaNull>>? + indirizzoEmail; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoRelationFilter, + _i2.SoggettoBusinessInfoWhereInput>? soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput({ + required this.where, + required this.create, + }); + + final _i2.LegaleRappresentanteWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LegaleRappresentanteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ReferenteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.ReferenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final _i2 + .LegaleRappresentanteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + final _i2.ReferenteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoWhereUniqueInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoWhereUniqueInput({ + this.uuid, + this.partitaIVA, + this.soggettoUuid, + this.AND, + this.OR, + this.NOT, + this.rea, + this.sdi, + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + final String? uuid; + + final String? partitaIVA; + + final String? soggettoUuid; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, + Iterable<_i2.SoggettoBusinessInfoWhereInput>>? AND; + + final Iterable<_i2.SoggettoBusinessInfoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoWhereInput, + Iterable<_i2.SoggettoBusinessInfoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? rea; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? sdi; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteNullableRelationFilter, + _i1.PrismaUnion<_i2.LegaleRappresentanteWhereInput, _i1.PrismaNull>>? + legaleRappresentante; + + final _i1.PrismaUnion<_i2.ReferenteNullableRelationFilter, + _i1.PrismaUnion<_i2.ReferenteWhereInput, _i1.PrismaNull>>? referente; + + final _i1.PrismaUnion<_i2.SoggettoRelationFilter, _i2.SoggettoWhereInput>? + soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'partitaIVA': partitaIVA, + 'soggettoUuid': soggettoUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'rea': rea, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoBusinessInfoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyDomicilioInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInput, + Iterable<_i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ConsumoAnnuoLuceUncheckedCreateNestedOneWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedCreateNestedOneWithoutFornituraLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput? + connectOrCreate; + + final _i2.ConsumoAnnuoLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelLuceCreateManyFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyFornituraLuceInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateManyFornituraLuceInput, + Iterable<_i2.ContrattoEnelLuceCreateManyFornituraLuceInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelLuceUncheckedCreateNestedManyWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateNestedManyWithoutFornituraLuceInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput, + Iterable< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornituraLuceUncheckedCreateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedCreateWithoutFornituraInput({ + this.uuid, + required this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final String? uuid; + + final String pod; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceWhereUniqueInput + implements _i1.JsonConvertible> { + const FornituraLuceWhereUniqueInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.AND, + this.OR, + this.NOT, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + }); + + final String? uuid; + + final String? pod; + + final String? fornituraUuid; + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, + Iterable<_i2.FornituraLuceWhereInput>>? AND; + + final Iterable<_i2.FornituraLuceWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraLuceWhereInput, + Iterable<_i2.FornituraLuceWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? potenza; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? tensione; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceNullableRelationFilter, + _i1.PrismaUnion<_i2.ConsumoAnnuoLuceWhereInput, _i1.PrismaNull>>? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceListRelationFilter? contrattiEnelLuce; + + final _i1.PrismaUnion<_i2.FornituraRelationFilter, _i2.FornituraWhereInput>? + fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceCreateOrConnectWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateOrConnectWithoutFornituraInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ConsumoAnnuoGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelGasCreateManyFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyFornituraGasInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateManyFornituraGasInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyFornituraGasInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateManyFornituraGasInput, + Iterable<_i2.ContrattoEnelGasCreateManyFornituraGasInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyFornituraGasInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornituraGasUncheckedCreateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateWithoutFornituraInput({ + this.uuid, + required this.pdr, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? classeMisuratoreGasId; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasCreateOrConnectWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasCreateOrConnectWithoutFornituraInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraGasUncheckedCreateNestedOneWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateNestedOneWithoutFornituraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraUncheckedCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateWithoutDomicilioInput({ + this.uuid, + this.etichetta, + required this.servizioEwoId, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String servizioEwoId; + + final _i2.FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedCreateNestedOneWithoutFornituraInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateOrConnectWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraCreateOrConnectWithoutDomicilioInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutDomicilioInput, + _i2.FornituraUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraCreateManyDomicilioInput + implements _i1.JsonConvertible> { + const FornituraCreateManyDomicilioInput({ + this.uuid, + this.etichetta, + required this.servizioEwoId, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraCreateManyDomicilioInputEnvelope + implements _i1.JsonConvertible> { + const FornituraCreateManyDomicilioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateManyDomicilioInput, + Iterable<_i2.FornituraCreateManyDomicilioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class FornituraUncheckedCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.FornituraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.FornituraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutContrattoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + }; +} + +class PraticaUncheckedCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutContrattoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateOrConnectWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutContrattoInput, + _i2.PraticaUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateNestedOneWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedOneWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutContrattoInput, + _i2.PraticaUncheckedCreateWithoutContrattoInput>? create; + + final _i2.PraticaCreateOrConnectWithoutContrattoInput? connectOrCreate; + + final _i2.PraticaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutModuloInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + }; +} + +class ContrattoEnelLuceUncheckedCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateWithoutContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateOrConnectWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateOrConnectWithoutContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelLuceCreateManyContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateManyContrattoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyContrattoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateManyContrattoInput, + Iterable<_i2.ContrattoEnelLuceCreateManyContrattoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelGasUncheckedCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateWithoutContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateOrConnectWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateOrConnectWithoutContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelGasCreateManyContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateManyContrattoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyContrattoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateManyContrattoInput, + Iterable<_i2.ContrattoEnelGasCreateManyContrattoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelFibraUncheckedCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateWithoutContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateOrConnectWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateOrConnectWithoutContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelFibraCreateManyContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateManyContrattoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyContrattoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateManyContrattoInput, + Iterable<_i2.ContrattoEnelFibraCreateManyContrattoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyContrattoInput({ + this.uuid, + required this.statoContrattoId, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateManyContrattoInput, + Iterable<_i2.ContrattoEnelXAssicurazioneCreateManyContrattoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoUncheckedCreateWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutModuloInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutModuloInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutModuloInput, + _i2.ContrattoUncheckedCreateWithoutModuloInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManyModuloInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyModuloInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + }; +} + +class ContrattoCreateManyModuloInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManyModuloInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManyModuloInput, + Iterable<_i2.ContrattoCreateManyModuloInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoCreateNestedManyWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutModuloInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutModuloInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutModuloInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutModuloInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutModuloInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutModuloInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelFibraCreateManyDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyDomicilioInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateManyDomicilioInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyDomicilioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateManyDomicilioInput, + Iterable<_i2.ContrattoEnelFibraCreateManyDomicilioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoOpportunitaCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCreateWithoutLeadsInput({ + this.uuid, + required this.nome, + this.tipoStato, + this.ordine, + required this.colore, + required this.opportunitaUuid, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? tipoStato; + + final _i1.PrismaUnion? ordine; + + final String colore; + + final String opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaUncheckedCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUncheckedCreateWithoutLeadsInput({ + this.uuid, + required this.nome, + this.tipoStato, + this.ordine, + required this.colore, + required this.opportunitaUuid, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? tipoStato; + + final _i1.PrismaUnion? ordine; + + final String colore; + + final String opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaWhereUniqueInput + implements _i1.JsonConvertible> { + const StatoOpportunitaWhereUniqueInput({ + this.uuid, + this.AND, + this.OR, + this.NOT, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion<_i2.StatoOpportunitaWhereInput, + Iterable<_i2.StatoOpportunitaWhereInput>>? AND; + + final Iterable<_i2.StatoOpportunitaWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOpportunitaWhereInput, + Iterable<_i2.StatoOpportunitaWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoNullableFilter, + _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>>? tipoStato; + + final _i1 + .PrismaUnion<_i2.IntNullableFilter, _i1.PrismaUnion>? + ordine; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? opportunitaUuid; + + final _i2.LeadListRelationFilter? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class StatoOpportunitaCreateOrConnectWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCreateOrConnectWithoutLeadsInput({ + required this.where, + required this.create, + }); + + final _i2.StatoOpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoOpportunitaCreateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedCreateWithoutLeadsInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoOpportunitaCreateNestedOneWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCreateNestedOneWithoutLeadsInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaCreateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedCreateWithoutLeadsInput>? create; + + final _i2.StatoOpportunitaCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.StatoOpportunitaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutLeadsInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUncheckedCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateWithoutProdottiOrdinatiInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.fornitoreId, + required this.tipoProdottoId, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String fornitoreId; + + final String tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoCreateOrConnectWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoCreateOrConnectWithoutProdottiOrdinatiInput({ + required this.where, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProdottiOrdinatiInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput, + Iterable< + _i2 + .ProdottoUncheckedCreateWithoutProdottiOrdinatiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineUncheckedCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutDomicilioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutDomicilioInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutDomicilioInput, + _i2.OrdineUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManyDomicilioInput + implements _i1.JsonConvertible> { + const OrdineCreateManyDomicilioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateManyDomicilioInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManyDomicilioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManyDomicilioInput, + Iterable<_i2.OrdineCreateManyDomicilioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.OrdineCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioUncheckedCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutLeadsInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class DomicilioCreateOrConnectWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutLeadsInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutLeadsInput, + _i2.DomicilioUncheckedCreateWithoutLeadsInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateNestedOneWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedOneWithoutLeadsInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutLeadsInput, + _i2.DomicilioUncheckedCreateWithoutLeadsInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.DomicilioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class StatoOrdineCreateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineCreateWithoutOrdiniInput({ + required this.id, + required this.nome, + required this.tipoStato, + required this.ordine, + required this.colore, + }); + + final String id; + + final String nome; + + final _i3.TipoStato tipoStato; + + final int ordine; + + final String colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineUncheckedCreateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineUncheckedCreateWithoutOrdiniInput({ + required this.id, + required this.nome, + required this.tipoStato, + required this.ordine, + required this.colore, + }); + + final String id; + + final String nome; + + final _i3.TipoStato tipoStato; + + final int ordine; + + final String colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineWhereUniqueInput + implements _i1.JsonConvertible> { + const StatoOrdineWhereUniqueInput({ + this.id, + this.AND, + this.OR, + this.NOT, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + }); + + final String? id; + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, + Iterable<_i2.StatoOrdineWhereInput>>? AND; + + final Iterable<_i2.StatoOrdineWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOrdineWhereInput, + Iterable<_i2.StatoOrdineWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoFilter, _i3.TipoStato>? tipoStato; + + final _i1.PrismaUnion<_i2.IntFilter, int>? ordine; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i2.OrdineListRelationFilter? ordini; + + @override + Map toJson() => { + 'id': id, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class StatoOrdineCreateOrConnectWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineCreateOrConnectWithoutOrdiniInput({ + required this.where, + required this.create, + }); + + final _i2.StatoOrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoOrdineCreateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedCreateWithoutOrdiniInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoOrdineCreateNestedOneWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineCreateNestedOneWithoutOrdiniInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineCreateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedCreateWithoutOrdiniInput>? create; + + final _i2.StatoOrdineCreateOrConnectWithoutOrdiniInput? connectOrCreate; + + final _i2.StatoOrdineWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaCreateWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaCreateWithoutAgentiInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaGestiteInput? gestoriLead; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + }; +} + +class OrdineUncheckedCreateWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutLeadInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + required this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutLeadInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutLeadInput, + _i2.OrdineUncheckedCreateWithoutLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManyLeadInput + implements _i1.JsonConvertible> { + const OrdineCreateManyLeadInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateManyLeadInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManyLeadInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManyLeadInput, + Iterable<_i2.OrdineCreateManyLeadInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutLeadInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutLeadInput, + Iterable<_i2.OrdineUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutLeadInput, + Iterable<_i2.OrdineCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i2.OrdineCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class HistoryCommentCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentCreateWithoutHistoryInput({required this.comment}); + + final String comment; + + @override + Map toJson() => {'comment': comment}; +} + +class HistoryCommentUncheckedCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedCreateWithoutHistoryInput( + {required this.comment}); + + final String comment; + + @override + Map toJson() => {'comment': comment}; +} + +class HistoryCommentWhereUniqueInput + implements _i1.JsonConvertible> { + const HistoryCommentWhereUniqueInput({ + this.historyUuid, + this.AND, + this.OR, + this.NOT, + this.comment, + this.history, + }); + + final String? historyUuid; + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, + Iterable<_i2.HistoryCommentWhereInput>>? AND; + + final Iterable<_i2.HistoryCommentWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryCommentWhereInput, + Iterable<_i2.HistoryCommentWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? comment; + + final _i1.PrismaUnion<_i2.HistoryRelationFilter, _i2.HistoryWhereInput>? + history; + + @override + Map toJson() => { + 'historyUuid': historyUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'comment': comment, + 'History': history, + }; +} + +class HistoryCommentCreateOrConnectWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentCreateOrConnectWithoutHistoryInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryCommentWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryCommentCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryCommentCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.HistoryCommentWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryAttachmentCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCreateWithoutHistoryInput({ + required this.url, + required this.name, + }); + + final String url; + + final String name; + + @override + Map toJson() => { + 'url': url, + 'name': name, + }; +} + +class HistoryAttachmentUncheckedCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedCreateWithoutHistoryInput({ + required this.url, + required this.name, + }); + + final String url; + + final String name; + + @override + Map toJson() => { + 'url': url, + 'name': name, + }; +} + +class HistoryAttachmentWhereUniqueInput + implements _i1.JsonConvertible> { + const HistoryAttachmentWhereUniqueInput({ + this.historyUuid, + this.AND, + this.OR, + this.NOT, + this.url, + this.name, + this.history, + }); + + final String? historyUuid; + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, + Iterable<_i2.HistoryAttachmentWhereInput>>? AND; + + final Iterable<_i2.HistoryAttachmentWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryAttachmentWhereInput, + Iterable<_i2.HistoryAttachmentWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? url; + + final _i1.PrismaUnion<_i2.StringFilter, String>? name; + + final _i1.PrismaUnion<_i2.HistoryRelationFilter, _i2.HistoryWhereInput>? + history; + + @override + Map toJson() => { + 'historyUuid': historyUuid, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'url': url, + 'name': name, + 'History': history, + }; +} + +class HistoryAttachmentCreateOrConnectWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCreateOrConnectWithoutHistoryInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryAttachmentWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryAttachmentCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryAttachmentCreateOrConnectWithoutHistoryInput? + connectOrCreate; + + final _i2.HistoryAttachmentWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryCommentCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.HistoryCommentWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryAttachmentCreateOrConnectWithoutHistoryInput? + connectOrCreate; + + final _i2.HistoryAttachmentWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryUncheckedCreateWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateWithoutLeadInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + this.comment, + this.attachment, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + final _i2.HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryCreateOrConnectWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryCreateOrConnectWithoutLeadInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutLeadInput, + _i2.HistoryUncheckedCreateWithoutLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryCreateManyLeadInput + implements _i1.JsonConvertible> { + const HistoryCreateManyLeadInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + }; +} + +class HistoryCreateManyLeadInputEnvelope + implements _i1.JsonConvertible> { + const HistoryCreateManyLeadInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateManyLeadInput, + Iterable<_i2.HistoryCreateManyLeadInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class HistoryCreateNestedManyWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryCreateNestedManyWithoutLeadInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutLeadInput, + Iterable<_i2.HistoryUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutLeadInput, + Iterable<_i2.HistoryCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i2.HistoryCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadCreateWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutOrdineInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'history': history, + }; +} + +class LeadUncheckedCreateWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutOrdineInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutOrdineInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOrdineInput, + _i2.LeadUncheckedCreateWithoutOrdineInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateNestedOneWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadCreateNestedOneWithoutOrdineInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOrdineInput, + _i2.LeadUncheckedCreateWithoutOrdineInput>? create; + + final _i2.LeadCreateOrConnectWithoutOrdineInput? connectOrCreate; + + final _i2.LeadWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class NegozioCreateWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutOrdineInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.leads, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + }; +} + +class TipoModuloContrattoCreateWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCreateWithoutModuloContrattoInput({ + required this.id, + required this.nome, + required this.numeroOfferteCollegabili, + }); + + final String id; + + final String nome; + + final int numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput({ + required this.id, + required this.nome, + required this.numeroOfferteCollegabili, + }); + + final String id; + + final String nome; + + final int numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoWhereUniqueInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoWhereUniqueInput({ + this.id, + this.AND, + this.OR, + this.NOT, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final String? id; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoWhereInput, + Iterable<_i2.TipoModuloContrattoWhereInput>>? AND; + + final Iterable<_i2.TipoModuloContrattoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoWhereInput, + Iterable<_i2.TipoModuloContrattoWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.IntFilter, int>? numeroOfferteCollegabili; + + final _i2.ModuloContrattoListRelationFilter? moduloContratto; + + @override + Map toJson() => { + 'id': id, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class TipoModuloContrattoCreateOrConnectWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCreateOrConnectWithoutModuloContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.TipoModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoCreateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoCreateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput>? + create; + + final _i2.TipoModuloContrattoCreateOrConnectWithoutModuloContrattoInput? + connectOrCreate; + + final _i2.TipoModuloContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ModuloContrattoCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateWithoutContrattiInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + this.serviziEwoCollegabili, + required this.fornitore, + required this.tipoModulo, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ServizioEwoCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.FornitoreCreateNestedOneWithoutModuliContrattoInput fornitore; + + final _i2.TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class PraticaUncheckedCreateWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutTipoPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateOrConnectWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutTipoPraticaInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutTipoPraticaInput, + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateManyTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaCreateManyTipoPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateManyTipoPraticaInputEnvelope + implements _i1.JsonConvertible> { + const PraticaCreateManyTipoPraticaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateManyTipoPraticaInput, + Iterable<_i2.PraticaCreateManyTipoPraticaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class PraticaUncheckedCreateNestedManyWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateNestedManyWithoutTipoPraticaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutTipoPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutTipoPraticaInput>, + _i1.PrismaUnion< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput, + Iterable< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput, + Iterable<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput>>? + connectOrCreate; + + final _i2.PraticaCreateManyTipoPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoPraticaUncheckedCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.PraticaUncheckedCreateNestedManyWithoutTipoPraticaInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class TipoPraticaCreateOrConnectWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateOrConnectWithoutServiziEwoInput({ + required this.where, + required this.create, + }); + + final _i2.TipoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutServiziEwoInput, + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.TipoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.TipoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraUncheckedCreateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateWithoutServizioEwoInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + final _i2.FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedCreateNestedOneWithoutFornituraInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateOrConnectWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraCreateOrConnectWithoutServizioEwoInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutServizioEwoInput, + _i2.FornituraUncheckedCreateWithoutServizioEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraCreateManyServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraCreateManyServizioEwoInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + }; +} + +class FornituraCreateManyServizioEwoInputEnvelope + implements _i1.JsonConvertible> { + const FornituraCreateManyServizioEwoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateManyServizioEwoInput, + Iterable<_i2.FornituraCreateManyServizioEwoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class FornituraUncheckedCreateNestedManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateNestedManyWithoutServizioEwoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.FornituraCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i2.FornituraCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutStatoInput, + _i2.PraticaUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateManyStatoInput + implements _i1.JsonConvertible> { + const PraticaCreateManyStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const PraticaCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateManyStatoInput, + Iterable<_i2.PraticaCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class PraticaUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutStatoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutStatoInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutStatoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i2.PraticaCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoPraticaUncheckedCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.PraticaUncheckedCreateNestedManyWithoutStatoInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class StatoPraticaCreateOrConnectWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateOrConnectWithoutServiziEwoInput({ + required this.where, + required this.create, + }); + + final _i2.StatoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutServiziEwoInput, + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.StatoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutStatoInput, + _i2.ContrattoUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManyStatoInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManyStatoInput, + Iterable<_i2.ContrattoCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutStatoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i2.ContrattoCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelLuceUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.fornituraLuceUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelLuceCreateManyStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyStatoInput({ + this.uuid, + required this.fornituraLuceUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateManyStatoInput, + Iterable<_i2.ContrattoEnelLuceCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelGasUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.fornituraGasUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String fornituraGasUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutStatoInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelGasCreateManyStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyStatoInput({ + this.uuid, + required this.fornituraGasUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String fornituraGasUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateManyStatoInput, + Iterable<_i2.ContrattoEnelGasCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelFibraUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelFibraCreateManyStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyStatoInput({ + this.uuid, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateManyStatoInput, + Iterable<_i2.ContrattoEnelFibraCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput({ + this.uuid, + required this.contrattoUuid, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String contrattoUuid; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyStatoInput({ + this.uuid, + required this.contrattoUuid, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String contrattoUuid; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateManyStatoInput, + Iterable<_i2.ContrattoEnelXAssicurazioneCreateManyStatoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoUncheckedCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.contratti, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateOrConnectWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutServiziEwoInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutServiziEwoInput, + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoContrattoCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2 + .StatoContrattoUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelFibraUncheckedCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateWithoutOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelFibraCreateOrConnectWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateOrConnectWithoutOffertaInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelFibraCreateManyOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelFibraCreateManyOffertaInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyOffertaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateManyOffertaInput, + Iterable<_i2.ContrattoEnelFibraCreateManyOffertaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateWithoutOffertaInput({ + this.uuid, + required this.stato, + required this.contratto, + required this.domicilio, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + contratto; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.domicilioUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final String domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyOffertaInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.domicilioUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final String domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateManyOffertaInput, + Iterable<_i2.ContrattoEnelXAssicurazioneCreateManyOffertaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class OffertaUncheckedCreateWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutInclusaInOfferteInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + }; +} + +class OffertaCreateOrConnectWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutInclusaInOfferteInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutInclusaInOfferteInput, + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedManyWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedManyWithoutInclusaInOfferteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutInclusaInOfferteInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutInclusaInOfferteInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput, + Iterable< + _i2 + .OffertaUncheckedCreateWithoutInclusaInOfferteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutInclusaInOfferteInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + }; +} + +class OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutInclusaInOfferteInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutInclusaInOfferteInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput, + Iterable< + _i2 + .OffertaUncheckedCreateWithoutInclusaInOfferteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaUncheckedCreateWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutOfferteIncluseInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutOfferteIncluseInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutOfferteIncluseInput, + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedManyWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedManyWithoutOfferteIncluseInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutOfferteIncluseInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutOfferteIncluseInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput, + Iterable<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutOfferteIncluseInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutOfferteIncluseInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutOfferteIncluseInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput, + Iterable<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaUncheckedCreateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutServizioEwoInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutServizioEwoInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutServizioEwoInput, + _i2.OffertaUncheckedCreateWithoutServizioEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateManyServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaCreateManyServizioEwoInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + }; +} + +class OffertaCreateManyServizioEwoInputEnvelope + implements _i1.JsonConvertible> { + const OffertaCreateManyServizioEwoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateManyServizioEwoInput, + Iterable<_i2.OffertaCreateManyServizioEwoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OffertaUncheckedCreateNestedManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateNestedManyWithoutServizioEwoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput>>>>? create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.OffertaCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i2.OffertaCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ServizioEwoUncheckedCreateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutModuliContrattoInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + }; +} + +class ServizioEwoCreateOrConnectWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutModuliContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutModuliContrattoInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutModuliContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ModuloContrattoUncheckedCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateWithoutContrattiInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + }; +} + +class ModuloContrattoCreateOrConnectWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateOrConnectWithoutContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedCreateWithoutContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ModuloContrattoCreateNestedOneWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateNestedOneWithoutContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.ModuloContrattoCreateOrConnectWithoutContrattiInput? + connectOrCreate; + + final _i2.ModuloContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutPraticaInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutPraticaInput, + _i2.ContrattoUncheckedCreateWithoutPraticaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManyPraticaInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCreateManyPraticaInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManyPraticaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManyPraticaInput, + Iterable<_i2.ContrattoCreateManyPraticaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutPraticaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutPraticaInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutPraticaInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutPraticaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutPraticaInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutPraticaInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutNegozioInput, + _i2.PraticaUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateManyNegozioInput + implements _i1.JsonConvertible> { + const PraticaCreateManyNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const PraticaCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateManyNegozioInput, + Iterable<_i2.PraticaCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class PraticaUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutNegozioInput, + Iterable<_i2.PraticaUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutNegozioInput, + Iterable<_i2.PraticaCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.PraticaCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutUtenteInput, + _i2.ContrattoUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManyUtenteInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManyUtenteInput, + Iterable<_i2.ContrattoCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutUtenteInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutUtenteInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutUtenteInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutUtenteInput, + _i2.PraticaUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateManyUtenteInput + implements _i1.JsonConvertible> { + const PraticaCreateManyUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const PraticaCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateManyUtenteInput, + Iterable<_i2.PraticaCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class PraticaUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutUtenteInput, + Iterable<_i2.PraticaUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutUtenteInput, + Iterable<_i2.PraticaCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.PraticaCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class IngressiUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.negozioCodice, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiCreateWithoutUtenteInput, + _i2.IngressiUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class IngressiCreateManyUtenteInput + implements _i1.JsonConvertible> { + const IngressiCreateManyUtenteInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.negozioCodice, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const IngressiCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.IngressiCreateManyUtenteInput, + Iterable<_i2.IngressiCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class IngressiUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutUtenteInput, + Iterable<_i2.IngressiUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutUtenteInput, + Iterable<_i2.IngressiCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.IngressiCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutUtenteInput, + _i2.LeadUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyUtenteInput + implements _i1.JsonConvertible> { + const LeadCreateManyUtenteInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyUtenteInput, + Iterable<_i2.LeadCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutUtenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutUtenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.LeadCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadUncheckedCreateWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutAgenteInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutAgenteInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutAgenteInput, + _i2.LeadUncheckedCreateWithoutAgenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyAgenteInput + implements _i1.JsonConvertible> { + const LeadCreateManyAgenteInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyAgenteInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyAgenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyAgenteInput, + Iterable<_i2.LeadCreateManyAgenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadUncheckedCreateNestedManyWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutAgenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutAgenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutAgenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutAgenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutAgenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutAgenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutAgenteInput>>? connectOrCreate; + + final _i2.LeadCreateManyAgenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutHistoryInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + }; +} + +class LeadUncheckedCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutHistoryInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + }; +} + +class LeadCreateOrConnectWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutHistoryInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutHistoryInput, + _i2.LeadUncheckedCreateWithoutHistoryInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.LeadCreateWithoutHistoryInput, + _i2.LeadUncheckedCreateWithoutHistoryInput>? create; + + final _i2.LeadCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.LeadWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryCreateWithoutUtenteInput({ + this.uuid, + required this.timestamp, + required this.event, + this.comment, + this.attachment, + this.lead, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i2.HistoryCommentCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentCreateNestedOneWithoutHistoryInput? attachment; + + final _i2.LeadCreateNestedOneWithoutHistoryInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Lead': lead, + }; +} + +class HistoryUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.timestamp, + required this.event, + this.leadUuid, + this.comment, + this.attachment, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i1.PrismaUnion? leadUuid; + + final _i2.HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutUtenteInput, + _i2.HistoryUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryCreateManyUtenteInput + implements _i1.JsonConvertible> { + const HistoryCreateManyUtenteInput({ + this.uuid, + required this.timestamp, + required this.event, + this.leadUuid, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i1.PrismaUnion? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'leadUuid': leadUuid, + }; +} + +class HistoryCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const HistoryCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateManyUtenteInput, + Iterable<_i2.HistoryCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class HistoryCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutUtenteInput, + Iterable<_i2.HistoryUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutUtenteInput, + Iterable<_i2.HistoryCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.HistoryCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutOpportunitaAssegnateInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'ordini': ordini, + 'history': history, + }; +} + +class OrdineUncheckedCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutUtenteInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutUtenteInput, + _i2.OrdineUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManyUtenteInput + implements _i1.JsonConvertible> { + const OrdineCreateManyUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateManyUtenteInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManyUtenteInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManyUtenteInput, + Iterable<_i2.OrdineCreateManyUtenteInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutUtenteInput, + Iterable<_i2.OrdineUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutUtenteInput, + Iterable<_i2.OrdineCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.OrdineCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class HistoryUncheckedCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutUtenteInput, + Iterable<_i2.HistoryUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutUtenteInput, + Iterable<_i2.HistoryCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.HistoryCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteUncheckedCreateWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutOpportunitaAssegnateInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutOpportunitaAssegnateInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteUncheckedCreateNestedManyWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateNestedManyWithoutOpportunitaAssegnateInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaAssegnateInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaAssegnateInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaUncheckedCreateWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateWithoutGestoriLeadInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadUncheckedCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaAssegnateInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'agenti': agenti, + }; +} + +class OpportunitaCreateOrConnectWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaCreateOrConnectWithoutGestoriLeadInput({ + required this.where, + required this.create, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutGestoriLeadInput, + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutGestoriLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutGestoriLeadInput>, + _i1.PrismaUnion< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaCreateOrConnectWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaCreateOrConnectWithoutAgentiInput({ + required this.where, + required this.create, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutAgentiInput, + _i2.OpportunitaUncheckedCreateWithoutAgentiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OpportunitaUncheckedCreateNestedManyWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateNestedManyWithoutAgentiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutAgentiInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutAgentiInput>, + _i1.PrismaUnion<_i2.OpportunitaUncheckedCreateWithoutAgentiInput, + Iterable<_i2.OpportunitaUncheckedCreateWithoutAgentiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutAgentiInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutAgentiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class UtenteUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutNegozioInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutNegozioInput, + _i2.UtenteUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateManyNegozioInput + implements _i1.JsonConvertible> { + const UtenteCreateManyNegozioInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const UtenteCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateManyNegozioInput, + Iterable<_i2.UtenteCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class UtenteUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.UtenteUncheckedCreateWithoutNegozioInput, + Iterable<_i2.UtenteUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutNegozioInput, + Iterable<_i2.UtenteCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.UtenteCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutNegozioInput, + _i2.ContrattoUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManyNegozioInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.praticaUuid, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManyNegozioInput, + Iterable<_i2.ContrattoCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutNegozioInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutNegozioInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutSoggettoInput, + _i2.PraticaUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class PraticaCreateManySoggettoInput + implements _i1.JsonConvertible> { + const PraticaCreateManySoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const PraticaCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateManySoggettoInput, + Iterable<_i2.PraticaCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class PraticaUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.PraticaCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutSoggettoInput, + _i2.ContrattoUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateManySoggettoInput + implements _i1.JsonConvertible> { + const ContrattoCreateManySoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const ContrattoCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateManySoggettoInput, + Iterable<_i2.ContrattoCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class IndirizzoEmailUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? legaleRappresentanteUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.IndirizzoEmailWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class IndirizzoEmailCreateManySoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateManySoggettoInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? legaleRappresentanteUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateManySoggettoInput, + Iterable<_i2.IndirizzoEmailCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.IndirizzoEmailCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.IndirizzoEmailCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NumeroTelefonoUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.numero, + this.etichetta, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? legaleRappresentateUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.NumeroTelefonoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NumeroTelefonoCreateManySoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateManySoggettoInput({ + this.uuid, + required this.numero, + this.etichetta, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? legaleRappresentateUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateManySoggettoInput, + Iterable<_i2.NumeroTelefonoCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.NumeroTelefonoCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.NumeroTelefonoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class OrdineUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutSoggettoInput, + _i2.OrdineUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManySoggettoInput + implements _i1.JsonConvertible> { + const OrdineCreateManySoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManySoggettoInput, + Iterable<_i2.OrdineCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.OrdineUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.OrdineCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i2.OrdineCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutSoggettoInput({ + this.uuid, + required this.opportunitaUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutSoggettoInput, + _i2.LeadUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManySoggettoInput + implements _i1.JsonConvertible> { + const LeadCreateManySoggettoInput({ + this.uuid, + required this.opportunitaUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManySoggettoInput, + Iterable<_i2.LeadCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.LeadUncheckedCreateWithoutSoggettoInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.LeadCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i2.LeadCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PrivacyUncheckedCreateNestedOneWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedCreateNestedOneWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.PrivacyCreateOrConnectWithoutSoggettoInput? connectOrCreate; + + final _i2.PrivacyWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoUncheckedCreateWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutNegozioPreferitoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutNegozioPreferitoInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateManyNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoCreateManyNegozioPreferitoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoCreateManyNegozioPreferitoInputEnvelope + implements _i1.JsonConvertible> { + const SoggettoCreateManyNegozioPreferitoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateManyNegozioPreferitoInput, + Iterable<_i2.SoggettoCreateManyNegozioPreferitoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i1.PrismaUnion< + Iterable<_i2.SoggettoCreateWithoutNegozioPreferitoInput>, + _i1.PrismaUnion< + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput, + Iterable< + _i2 + .SoggettoUncheckedCreateWithoutNegozioPreferitoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput, + Iterable<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput>>? + connectOrCreate; + + final _i2.SoggettoCreateManyNegozioPreferitoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class IngressiUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUncheckedCreateWithoutNegozioInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utenteUuid, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + }; +} + +class IngressiCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiCreateWithoutNegozioInput, + _i2.IngressiUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class IngressiCreateManyNegozioInput + implements _i1.JsonConvertible> { + const IngressiCreateManyNegozioInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utenteUuid, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + }; +} + +class IngressiCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const IngressiCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.IngressiCreateManyNegozioInput, + Iterable<_i2.IngressiCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class IngressiUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutNegozioInput, + Iterable<_i2.IngressiUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutNegozioInput, + Iterable<_i2.IngressiCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i2.IngressiCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutNegozioInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutNegozioInput, + _i2.LeadUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyNegozioInput + implements _i1.JsonConvertible> { + const LeadCreateManyNegozioInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyNegozioInput, + Iterable<_i2.LeadCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutNegozioInput, + Iterable<_i2.LeadUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutNegozioInput, + Iterable<_i2.LeadCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.LeadCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioUncheckedCreateWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutOrdineInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + }; +} + +class NegozioCreateOrConnectWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutOrdineInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutOrdineInput, + _i2.NegozioUncheckedCreateWithoutOrdineInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutOrdineInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutOrdineInput, + _i2.NegozioUncheckedCreateWithoutOrdineInput>? create; + + final _i2.NegozioCreateOrConnectWithoutOrdineInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'negozio': negozio, + }; +} + +class OrdineCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutUtenteInput, + Iterable<_i2.OrdineUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutUtenteInput, + Iterable<_i2.OrdineCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.OrdineCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutHistoryInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + }; +} + +class UtenteUncheckedCreateWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutHistoryInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + }; +} + +class UtenteCreateOrConnectWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutHistoryInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutHistoryInput, + _i2.UtenteUncheckedCreateWithoutHistoryInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutHistoryInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutHistoryInput, + _i2.UtenteUncheckedCreateWithoutHistoryInput>? create; + + final _i2.UtenteCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryCreateWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryCreateWithoutLeadInput({ + this.uuid, + required this.timestamp, + required this.event, + this.comment, + this.attachment, + required this.utente, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i2.HistoryCommentCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentCreateNestedOneWithoutHistoryInput? attachment; + + final _i2.UtenteCreateNestedOneWithoutHistoryInput utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + }; +} + +class HistoryUncheckedCreateNestedManyWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateNestedManyWithoutLeadInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutLeadInput, + Iterable<_i2.HistoryUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutLeadInput, + Iterable<_i2.HistoryCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i2.HistoryCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadUncheckedCreateWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutOpportunitaInput({ + this.uuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutOpportunitaInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOpportunitaInput, + _i2.LeadUncheckedCreateWithoutOpportunitaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateManyOpportunitaInput({ + this.uuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyOpportunitaInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyOpportunitaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyOpportunitaInput, + Iterable<_i2.LeadCreateManyOpportunitaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadUncheckedCreateNestedManyWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutOpportunitaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutOpportunitaInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutOpportunitaInput, + Iterable<_i2.LeadUncheckedCreateWithoutOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutOpportunitaInput>>? + connectOrCreate; + + final _i2.LeadCreateManyOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteUncheckedCreateWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutOpportunitaGestiteInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutOpportunitaGestiteInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteUncheckedCreateNestedManyWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateNestedManyWithoutOpportunitaGestiteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaGestiteInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaGestiteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaUncheckedCreateWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateWithoutAgentiInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadUncheckedCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaGestiteInput? + gestoriLead; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + }; +} + +class OpportunitaCreateNestedManyWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaCreateNestedManyWithoutAgentiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutAgentiInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutAgentiInput>, + _i1.PrismaUnion<_i2.OpportunitaUncheckedCreateWithoutAgentiInput, + Iterable<_i2.OpportunitaUncheckedCreateWithoutAgentiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutAgentiInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutAgentiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class UtenteCreateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutOrdiniInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutOrdiniInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutOrdiniInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOrdiniInput, + _i2.UtenteUncheckedCreateWithoutOrdiniInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutOrdiniInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOrdiniInput, + _i2.UtenteUncheckedCreateWithoutOrdiniInput>? create; + + final _i2.UtenteCreateOrConnectWithoutOrdiniInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineCreateWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutLeadInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.domicilio, + this.statoOrdine, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineCreateNestedManyWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutLeadInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutLeadInput, + Iterable<_i2.OrdineUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutLeadInput, + Iterable<_i2.OrdineCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i2.OrdineCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class LeadCreateWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutOpportunitaInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateNestedManyWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutOpportunitaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutOpportunitaInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutOpportunitaInput, + Iterable<_i2.LeadUncheckedCreateWithoutOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutOpportunitaInput>>? + connectOrCreate; + + final _i2.LeadCreateManyOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateNestedManyWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedManyWithoutOpportunitaAssegnateInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaAssegnateInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaAssegnateInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaCreateWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaCreateWithoutGestoriLeadInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaAssegnateInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'agenti': agenti, + }; +} + +class OpportunitaCreateNestedManyWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaCreateNestedManyWithoutGestoriLeadInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutGestoriLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutGestoriLeadInput>, + _i1.PrismaUnion< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class UtenteCreateWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutLeadsAssegnatiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutLeadsAssegnatiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutLeadsAssegnatiInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedCreateWithoutLeadsAssegnatiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutLeadsAssegnatiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedCreateWithoutLeadsAssegnatiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutLeadsAssegnatiInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LeadCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutUtenteInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutUtenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutUtenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.LeadCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutIngressiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutIngressiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutIngressiInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutIngressiInput, + _i2.UtenteUncheckedCreateWithoutIngressiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutIngressiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutIngressiInput, + _i2.UtenteUncheckedCreateWithoutIngressiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutIngressiInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IngressiCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiCreateWithoutNegozioInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utente, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final _i2.UtenteCreateNestedOneWithoutIngressiInput utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utente': utente, + }; +} + +class IngressiCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutNegozioInput, + Iterable<_i2.IngressiUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutNegozioInput, + Iterable<_i2.IngressiCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i2.IngressiCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class OrdineCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + required this.utente, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + }; +} + +class OrdineUncheckedCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutNegozioInput, + _i2.OrdineUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManyNegozioInput + implements _i1.JsonConvertible> { + const OrdineCreateManyNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + }; +} + +class OrdineCreateManyNegozioInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManyNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManyNegozioInput, + Iterable<_i2.OrdineCreateManyNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutNegozioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutNegozioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.OrdineCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutLeadsInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'Ordine': ordine, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutNegozioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutNegozioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.OrdineCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioUncheckedCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutLeadsInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutLeadsInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutLeadsInput, + _i2.NegozioUncheckedCreateWithoutLeadsInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutLeadsInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutLeadsInput, + _i2.NegozioUncheckedCreateWithoutLeadsInput>? create; + + final _i2.NegozioCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LeadCreateWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutAgenteInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateNestedManyWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutAgenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutAgenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutAgenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutAgenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutAgenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutAgenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutAgenteInput>>? connectOrCreate; + + final _i2.LeadCreateManyAgenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutLeadsGestitiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutLeadsGestitiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutLeadsGestitiInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedCreateWithoutLeadsGestitiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutLeadsGestitiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedCreateWithoutLeadsGestitiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutLeadsGestitiInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LeadCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutDomicilioInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutDomicilioInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutDomicilioInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutDomicilioInput, + _i2.LeadUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyDomicilioInput + implements _i1.JsonConvertible> { + const LeadCreateManyDomicilioInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyDomicilioInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyDomicilioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyDomicilioInput, + Iterable<_i2.LeadCreateManyDomicilioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.LeadUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.LeadCreateOrConnectWithoutDomicilioInput>>? connectOrCreate; + + final _i2.LeadCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutProdottiOrdinatiInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'leads': leads, + }; +} + +class LeadUncheckedCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.LeadUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.LeadCreateOrConnectWithoutDomicilioInput>>? connectOrCreate; + + final _i2.LeadCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioUncheckedCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutProdottiOrdinatiInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'leads': leads, + }; +} + +class DomicilioCreateOrConnectWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutProdottiOrdinatiInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedCreateWithoutProdottiOrdinatiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateNestedOneWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedOneWithoutProdottiOrdinatiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedCreateWithoutProdottiOrdinatiInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutProdottiOrdinatiInput? + connectOrCreate; + + final _i2.DomicilioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutProdottiInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutProdottiInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateOrConnectWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutProdottiInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutProdottiInput, + _i2.OrdineUncheckedCreateWithoutProdottiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateNestedManyWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutProdottiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutProdottiInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutProdottiInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutProdottiInput, + Iterable<_i2.OrdineUncheckedCreateWithoutProdottiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutProdottiInput, + Iterable<_i2.OrdineCreateOrConnectWithoutProdottiInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class TipoProdottoCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoCreateWithoutProdottiInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoUncheckedCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoUncheckedCreateWithoutProdottiInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoWhereUniqueInput + implements _i1.JsonConvertible> { + const TipoProdottoWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.prodotti, + }); + + final String? id; + + final String? nome; + + final _i1.PrismaUnion<_i2.TipoProdottoWhereInput, + Iterable<_i2.TipoProdottoWhereInput>>? AND; + + final Iterable<_i2.TipoProdottoWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoProdottoWhereInput, + Iterable<_i2.TipoProdottoWhereInput>>? NOT; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'prodotti': prodotti, + }; +} + +class TipoProdottoCreateOrConnectWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoCreateOrConnectWithoutProdottiInput({ + required this.where, + required this.create, + }); + + final _i2.TipoProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.TipoProdottoCreateWithoutProdottiInput, + _i2.TipoProdottoUncheckedCreateWithoutProdottiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class TipoProdottoCreateNestedOneWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoCreateNestedOneWithoutProdottiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoCreateWithoutProdottiInput, + _i2.TipoProdottoUncheckedCreateWithoutProdottiInput>? create; + + final _i2.TipoProdottoCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.TipoProdottoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ProdottoCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateWithoutFornitoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttore, + this.prodottiOrdinati, + required this.tipoProdotto, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final _i2.ProduttoreCreateNestedOneWithoutProdottiInput produttore; + + final _i2.OrdineCreateNestedManyWithoutProdottiInput? prodottiOrdinati; + + final _i2.TipoProdottoCreateNestedOneWithoutProdottiInput tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'tipoProdotto': tipoProdotto, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutProdottiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutProdottiInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutProdottiInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutProdottiInput, + Iterable<_i2.OrdineUncheckedCreateWithoutProdottiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutProdottiInput, + Iterable<_i2.OrdineCreateOrConnectWithoutProdottiInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ProdottoUncheckedCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateWithoutFornitoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String tipoProdottoId; + + final _i2.OrdineUncheckedCreateNestedManyWithoutProdottiInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoCreateOrConnectWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateOrConnectWithoutFornitoreInput({ + required this.where, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutFornitoreInput, + _i2.ProdottoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ProdottoCreateManyFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateManyFornitoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.tipoProdottoId, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoCreateManyFornitoreInputEnvelope + implements _i1.JsonConvertible> { + const ProdottoCreateManyFornitoreInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ProdottoCreateManyFornitoreInput, + Iterable<_i2.ProdottoCreateManyFornitoreInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ProdottoCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutFornitoreInput>, + _i1.PrismaUnion<_i2.ProdottoUncheckedCreateWithoutFornitoreInput, + Iterable<_i2.ProdottoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornitoreCreateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreCreateWithoutModuliContrattoInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutFornitoreInput? serviziEwo; + + final _i2.ProdottoCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'prodotti': prodotti, + }; +} + +class ContrattoUncheckedCreateNestedManyWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateNestedManyWithoutModuloInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutModuloInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutModuloInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutModuloInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutModuloInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutModuloInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + this.contratti, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutModuloInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'contratti': contratti, + }; +} + +class ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput({ + required this.where, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i2.ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i1.PrismaUnion< + Iterable< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput>, + _i1.PrismaUnion< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoUncheckedCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutFornitoreInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutFornitoreInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitoreInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoCreateManyFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateManyFornitoreInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoCreateManyFornitoreInputEnvelope + implements _i1.JsonConvertible> { + const ServizioEwoCreateManyFornitoreInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoCreateManyFornitoreInput, + Iterable<_i2.ServizioEwoCreateManyFornitoreInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ServizioEwoUncheckedCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ServizioEwoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ProdottoUncheckedCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutFornitoreInput>, + _i1.PrismaUnion<_i2.ProdottoUncheckedCreateWithoutFornitoreInput, + Iterable<_i2.ProdottoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornitoreUncheckedCreateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedCreateWithoutModuliContrattoInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutFornitoreInput? + serviziEwo; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'prodotti': prodotti, + }; +} + +class FornitoreWhereUniqueInput + implements _i1.JsonConvertible> { + const FornitoreWhereUniqueInput({ + this.id, + this.nome, + this.AND, + this.OR, + this.NOT, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final String? id; + + final String? nome; + + final _i1 + .PrismaUnion<_i2.FornitoreWhereInput, Iterable<_i2.FornitoreWhereInput>>? + AND; + + final Iterable<_i2.FornitoreWhereInput>? OR; + + final _i1 + .PrismaUnion<_i2.FornitoreWhereInput, Iterable<_i2.FornitoreWhereInput>>? + NOT; + + final _i2.ServizioEwoListRelationFilter? serviziEwo; + + final _i2.ModuloContrattoListRelationFilter? moduliContratto; + + final _i2.ProdottoListRelationFilter? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreCreateOrConnectWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreCreateOrConnectWithoutModuliContrattoInput({ + required this.where, + required this.create, + }); + + final _i2.FornitoreWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedCreateWithoutModuliContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornitoreCreateNestedOneWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreCreateNestedOneWithoutModuliContrattoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedCreateWithoutModuliContrattoInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutModuliContrattoInput? + connectOrCreate; + + final _i2.FornitoreWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ModuloContrattoCreateWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateWithoutServiziEwoCollegabiliInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + this.contratti, + required this.fornitore, + required this.tipoModulo, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ContrattoCreateNestedManyWithoutModuloInput? contratti; + + final _i2.FornitoreCreateNestedOneWithoutModuliContrattoInput fornitore; + + final _i2.TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i1.PrismaUnion< + Iterable< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput>, + _i1.PrismaUnion< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutOfferteInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedCreateWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutOfferteInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutOfferteInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutOfferteInput, + _i2.ServizioEwoUncheckedCreateWithoutOfferteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoCreateNestedOneWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedOneWithoutOfferteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutOfferteInput, + _i2.ServizioEwoUncheckedCreateWithoutOfferteInput>? create; + + final _i2.ServizioEwoCreateOrConnectWithoutOfferteInput? connectOrCreate; + + final _i2.ServizioEwoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutContrattiEnelFibraInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutContrattiEnelFibraInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutContrattiEnelFibraInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelFibraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedOneWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedOneWithoutContrattiEnelFibraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.OffertaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelFibraCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateWithoutDomicilioInput({ + this.uuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + required this.stato, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelFibraInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelFibraInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioUncheckedCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutSoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateOrConnectWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutSoggettoInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutSoggettoInput, + _i2.DomicilioUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateManySoggettoInput + implements _i1.JsonConvertible> { + const DomicilioCreateManySoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + }; +} + +class DomicilioCreateManySoggettoInputEnvelope + implements _i1.JsonConvertible> { + const DomicilioCreateManySoggettoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateManySoggettoInput, + Iterable<_i2.DomicilioCreateManySoggettoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class DomicilioUncheckedCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.DomicilioCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.DomicilioUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.DomicilioUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.DomicilioCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.DomicilioCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.DomicilioCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoUncheckedCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutLeadsInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutLeadsInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutLeadsInput, + _i2.SoggettoUncheckedCreateWithoutLeadsInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutLeadsInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutLeadsInput, + _i2.SoggettoUncheckedCreateWithoutLeadsInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LeadCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutNegozioInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutNegozioInput, + Iterable<_i2.LeadUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutNegozioInput, + Iterable<_i2.LeadCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.LeadCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutIngressiInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutIngressiInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutIngressiInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutIngressiInput, + _i2.NegozioUncheckedCreateWithoutIngressiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutIngressiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutIngressiInput, + _i2.NegozioUncheckedCreateWithoutIngressiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutIngressiInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IngressiCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiCreateWithoutUtenteInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.negozio, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final _i2.NegozioCreateNestedOneWithoutIngressiInput negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozio': negozio, + }; +} + +class IngressiCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutUtenteInput, + Iterable<_i2.IngressiUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutUtenteInput, + Iterable<_i2.IngressiCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.IngressiCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutContrattiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutContrattiInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutContrattiInput, + _i2.UtenteUncheckedCreateWithoutContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutContrattiInput, + _i2.UtenteUncheckedCreateWithoutContrattiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutNegozioInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutNegozioInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutPraticheInput({ + required this.codice, + required this.nome, + this.utenti, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutPraticheInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutPraticheInput, + _i2.NegozioUncheckedCreateWithoutPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutPraticheInput, + _i2.NegozioUncheckedCreateWithoutPraticheInput>? create; + + final _i2.NegozioCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateNestedManyWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutPraticaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutPraticaInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutPraticaInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutPraticaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutPraticaInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutPraticaInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class PraticaCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.soggetto, + this.negozio, + this.stato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutUtenteInput, + Iterable<_i2.PraticaUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutUtenteInput, + Iterable<_i2.PraticaCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i2.PraticaCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutOpportunitaGestiteInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateNestedManyWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedManyWithoutOpportunitaGestiteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaGestiteInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaGestiteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OpportunitaCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaCreateWithoutLeadsInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.gestoriLead, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaGestiteInput? gestoriLead; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaAssegnateInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUncheckedCreateWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateWithoutLeadsInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.gestoriLead, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaGestiteInput? + gestoriLead; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaAssegnateInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaCreateOrConnectWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaCreateOrConnectWithoutLeadsInput({ + required this.where, + required this.create, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutLeadsInput, + _i2.OpportunitaUncheckedCreateWithoutLeadsInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OpportunitaCreateNestedOneWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaCreateNestedOneWithoutLeadsInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutLeadsInput, + _i2.OpportunitaUncheckedCreateWithoutLeadsInput>? create; + + final _i2.OpportunitaCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.OpportunitaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LeadCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutSoggettoInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.LeadUncheckedCreateWithoutSoggettoInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.LeadCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i2.LeadCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutProdottiOrdinatiInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutProdottiOrdinatiInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutProdottiOrdinatiInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedCreateWithoutProdottiOrdinatiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutProdottiOrdinatiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedCreateWithoutProdottiOrdinatiInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutProdottiOrdinatiInput? + connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutDomicilioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.statoOrdine, + this.lead, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.OrdineCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutContrattiEnelFibraInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutContrattiEnelFibraInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateOrConnectWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutContrattiEnelFibraInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelFibraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateNestedOneWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedOneWithoutContrattiEnelFibraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.DomicilioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelFibraCreateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateWithoutOffertaInput({ + this.uuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + required this.stato, + required this.contratto, + this.domicilio, + }); + + final String? uuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelFibraInput contratto; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelFibraInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraCreateNestedManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateNestedManyWithoutOffertaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class OffertaCreateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutServizioEwoInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateNestedManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedManyWithoutServizioEwoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput>>>>? create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.OffertaCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i2.OffertaCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutFornitoreInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ServizioEwoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornitoreCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreCreateWithoutProdottiInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutFornitoreInput? serviziEwo; + + final _i2.ModuloContrattoCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + }; +} + +class ModuloContrattoUncheckedCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateWithoutFornitoreInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutModuloInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoCreateOrConnectWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateOrConnectWithoutFornitoreInput({ + required this.where, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutFornitoreInput, + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ModuloContrattoCreateManyFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateManyFornitoreInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoCreateManyFornitoreInputEnvelope + implements _i1.JsonConvertible> { + const ModuloContrattoCreateManyFornitoreInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateManyFornitoreInput, + Iterable<_i2.ModuloContrattoCreateManyFornitoreInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ModuloContrattoUncheckedCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ModuloContrattoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornitoreUncheckedCreateWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedCreateWithoutProdottiInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutFornitoreInput? + serviziEwo; + + final _i2.ModuloContrattoUncheckedCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + }; +} + +class FornitoreCreateOrConnectWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreCreateOrConnectWithoutProdottiInput({ + required this.where, + required this.create, + }); + + final _i2.FornitoreWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutProdottiInput, + _i2.FornitoreUncheckedCreateWithoutProdottiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornitoreCreateNestedOneWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreCreateNestedOneWithoutProdottiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutProdottiInput, + _i2.FornitoreUncheckedCreateWithoutProdottiInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.FornitoreWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ProdottoCreateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoCreateWithoutProdottiOrdinatiInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttore, + required this.fornitore, + required this.tipoProdotto, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final _i2.ProduttoreCreateNestedOneWithoutProdottiInput produttore; + + final _i2.FornitoreCreateNestedOneWithoutProdottiInput fornitore; + + final _i2.TipoProdottoCreateNestedOneWithoutProdottiInput tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoCreateNestedManyWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoCreateNestedManyWithoutProdottiOrdinatiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProdottiOrdinatiInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput, + Iterable< + _i2 + .ProdottoUncheckedCreateWithoutProdottiOrdinatiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OrdineCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + this.domicilio, + this.statoOrdine, + this.lead, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.OrdineUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.OrdineCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i2.OrdineCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutNegozioPreferitoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateNestedManyWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedManyWithoutNegozioPreferitoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i1.PrismaUnion< + Iterable<_i2.SoggettoCreateWithoutNegozioPreferitoInput>, + _i1.PrismaUnion< + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput, + Iterable< + _i2 + .SoggettoUncheckedCreateWithoutNegozioPreferitoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput, + Iterable<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput>>? + connectOrCreate; + + final _i2.SoggettoCreateManyNegozioPreferitoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutContrattiInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutContrattiInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutContrattiInput, + _i2.NegozioUncheckedCreateWithoutContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutContrattiInput, + _i2.NegozioUncheckedCreateWithoutContrattiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutUtenteInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoCreateNestedManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutUtenteInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutUtenteInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutUtenteInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutUtenteInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class UtenteCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutNegozioInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.UtenteUncheckedCreateWithoutNegozioInput, + Iterable<_i2.UtenteUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutNegozioInput, + Iterable<_i2.UtenteCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.UtenteCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutSoggettiInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + required this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutSoggettiInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutSoggettiInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutSoggettiInput, + _i2.NegozioUncheckedCreateWithoutSoggettiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutSoggettiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutSoggettiInput, + _i2.NegozioUncheckedCreateWithoutSoggettiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutSoggettiInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutSoggettoBusinessInfoInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutSoggettoBusinessInfoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + this.referente, + required this.soggetto, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final _i2.ReferenteCreateNestedOneWithoutSoggettoBusinessInfoInput? referente; + + final _i2.SoggettoCreateNestedOneWithoutSoggettoBusinessInfoInput soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + required this.soggettoUuid, + this.referente, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final String soggettoUuid; + + final _i2.ReferenteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoCreateOrConnectWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateOrConnectWithoutLegaleRappresentanteInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoBusinessInfoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoBusinessInfoCreateNestedOneWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateNestedOneWithoutLegaleRappresentanteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LegaleRappresentanteCreateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateWithoutIndirizzoEmailInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutLegaleRappresentanteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.numeroTelefono, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2 + .NumeroTelefonoUncheckedCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + }; +} + +class LegaleRappresentanteCreateOrConnectWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateOrConnectWithoutIndirizzoEmailInput({ + required this.where, + required this.create, + }); + + final _i2.LegaleRappresentanteWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LegaleRappresentanteCreateNestedOneWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateNestedOneWithoutIndirizzoEmailInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutIndirizzoEmailInput? + connectOrCreate; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IndirizzoEmailCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateWithoutReferenteInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggetto, + this.legaleRappresentante, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutIndirizziEmailInput? soggetto; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutIndirizzoEmailInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailCreateNestedOneWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateNestedOneWithoutReferenteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput>? create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoBusinessInfoCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateWithoutReferenteInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + this.legaleRappresentante, + required this.soggetto, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + final _i2.SoggettoCreateNestedOneWithoutSoggettoBusinessInfoInput soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + required this.soggettoUuid, + this.legaleRappresentante, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final String soggettoUuid; + + final _i2 + .LegaleRappresentanteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class SoggettoBusinessInfoCreateOrConnectWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateOrConnectWithoutReferenteInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoBusinessInfoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoBusinessInfoCreateNestedOneWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateNestedOneWithoutReferenteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutReferenteInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ReferenteCreateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteCreateWithoutNumeroTelefonoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.indirizzoEmail, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.IndirizzoEmailCreateNestedOneWithoutReferenteInput? indirizzoEmail; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutReferenteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedCreateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedCreateWithoutNumeroTelefonoInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2.IndirizzoEmailUncheckedCreateNestedOneWithoutReferenteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteCreateOrConnectWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteCreateOrConnectWithoutNumeroTelefonoInput({ + required this.where, + required this.create, + }); + + final _i2.ReferenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedCreateWithoutNumeroTelefonoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ReferenteCreateNestedOneWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteCreateNestedOneWithoutNumeroTelefonoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedCreateWithoutNumeroTelefonoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutNumeroTelefonoInput? connectOrCreate; + + final _i2.ReferenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class NumeroTelefonoCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateWithoutSoggettoInput({ + this.uuid, + required this.numero, + this.etichetta, + this.legaleRappresentate, + this.referente, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutNumeroTelefonoInput? + legaleRappresentate; + + final _i2.ReferenteCreateNestedOneWithoutNumeroTelefonoInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class NumeroTelefonoCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.NumeroTelefonoCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.NumeroTelefonoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutIndirizziEmailInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutIndirizziEmailInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutIndirizziEmailInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedCreateWithoutIndirizziEmailInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutIndirizziEmailInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedCreateWithoutIndirizziEmailInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutIndirizziEmailInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IndirizzoEmailCreateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateWithoutLegaleRappresentanteInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggetto, + this.referente, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutIndirizziEmailInput? soggetto; + + final _i2.ReferenteCreateNestedOneWithoutIndirizzoEmailInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + }; +} + +class IndirizzoEmailCreateNestedOneWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateNestedOneWithoutLegaleRappresentanteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LegaleRappresentanteCreateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateWithoutNumeroTelefonoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.indirizzoEmail, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.IndirizzoEmailCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutLegaleRappresentanteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2 + .IndirizzoEmailUncheckedCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteCreateOrConnectWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateOrConnectWithoutNumeroTelefonoInput({ + required this.where, + required this.create, + }); + + final _i2.LegaleRappresentanteWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LegaleRappresentanteCreateNestedOneWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateNestedOneWithoutNumeroTelefonoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutNumeroTelefonoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class NumeroTelefonoCreateWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateWithoutReferenteInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggetto, + this.legaleRappresentate, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutNumeriTelefonoInput? soggetto; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutNumeroTelefonoInput? + legaleRappresentate; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + }; +} + +class NumeroTelefonoCreateNestedOneWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateNestedOneWithoutReferenteInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ReferenteCreateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteCreateWithoutIndirizzoEmailInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutReferenteInput? numeroTelefono; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutReferenteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedCreateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedCreateWithoutIndirizzoEmailInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.numeroTelefono, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoUncheckedCreateNestedOneWithoutReferenteInput? + numeroTelefono; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + }; +} + +class ReferenteCreateOrConnectWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteCreateOrConnectWithoutIndirizzoEmailInput({ + required this.where, + required this.create, + }); + + final _i2.ReferenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedCreateWithoutIndirizzoEmailInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ReferenteCreateNestedOneWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteCreateNestedOneWithoutIndirizzoEmailInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedCreateWithoutIndirizzoEmailInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutIndirizzoEmailInput? connectOrCreate; + + final _i2.ReferenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class IndirizzoEmailCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateWithoutSoggettoInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.referente, + this.legaleRappresentante, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i2.ReferenteCreateNestedOneWithoutIndirizzoEmailInput? referente; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutIndirizzoEmailInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.IndirizzoEmailCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.IndirizzoEmailCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutContrattiInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutContrattiInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutContrattiInput, + _i2.SoggettoUncheckedCreateWithoutContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutContrattiInput, + _i2.SoggettoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class ContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.ContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutContrattiEnelXAssicurazioneInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.OffertaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateWithoutStatoInput({ + this.uuid, + required this.contratto, + required this.domicilio, + this.offerta, + }); + + final String? uuid; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + contratto; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + domicilio; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutContrattiInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i2.ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i1.PrismaUnion< + Iterable< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class StatoContrattoUncheckedCreateWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutContrattiInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateOrConnectWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutContrattiInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoCreateNestedOneWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedOneWithoutContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutContrattiEnelGasInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateNestedOneWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedOneWithoutContrattiEnelGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.ContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutContrattiEnelGasInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedOneWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedOneWithoutContrattiEnelGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelGasInput? connectOrCreate; + + final _i2.OffertaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelGasCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateWithoutFornituraGasInput({ + this.uuid, + required this.stato, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelGasInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelGasInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyFornituraGasInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornituraGasCreateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasCreateWithoutFornituraInput({ + this.uuid, + required this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasCreateNestedOneWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasCreateNestedOneWithoutFornituraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraCreateWithoutDomicilioInput({ + this.uuid, + this.etichetta, + required this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i2.ServizioEwoCreateNestedOneWithoutFornitureInput servizioEwo; + + final _i2.FornituraLuceCreateNestedOneWithoutFornituraInput? fornituraLuce; + + final _i2.FornituraGasCreateNestedOneWithoutFornituraInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.FornituraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.FornituraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateOrConnectWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutContrattiEnelXAssicurazioneInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.DomicilioCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.DomicilioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateWithoutContrattoInput({ + this.uuid, + required this.stato, + required this.domicilio, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + stato; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + domicilio; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutContrattiEnelFibraInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutContrattiEnelFibraInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutContrattiEnelFibraInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelFibraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateNestedOneWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedOneWithoutContrattiEnelFibraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.ContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelFibraCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateWithoutStatoInput({ + this.uuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + required this.contratto, + this.offerta, + this.domicilio, + }); + + final String? uuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelFibraInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelFibraInput? offerta; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelFibraInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.contratti, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoContrattoCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2 + .StatoContrattoUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutStatiPossibiliPraticheInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i2.ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoCreateNestedManyWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedManyWithoutStatiPossibiliPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class StatoPraticaCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateWithoutPraticheInput({ + required this.id, + required this.nome, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliPraticheInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class StatoPraticaUncheckedCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedCreateWithoutPraticheInput({ + required this.id, + required this.nome, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliPraticheInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaCreateOrConnectWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateOrConnectWithoutPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.StatoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutPraticheInput, + _i2.StatoPraticaUncheckedCreateWithoutPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoPraticaCreateNestedOneWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateNestedOneWithoutPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutPraticheInput, + _i2.StatoPraticaUncheckedCreateWithoutPraticheInput>? create; + + final _i2.StatoPraticaCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.StatoPraticaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PraticaCreateWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutNegozioInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.soggetto, + this.utente, + this.stato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaCreateNestedManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedManyWithoutNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutNegozioInput, + Iterable<_i2.PraticaUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutNegozioInput, + Iterable<_i2.PraticaCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i2.PraticaCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class NegozioCreateWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutUtentiInput({ + required this.codice, + required this.nome, + this.pratiche, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutUtentiInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutUtentiInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutUtentiInput, + _i2.NegozioUncheckedCreateWithoutUtentiInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateNestedOneWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedOneWithoutUtentiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutUtentiInput, + _i2.NegozioUncheckedCreateWithoutUtentiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutUtentiInput? connectOrCreate; + + final _i2.NegozioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class UtenteCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteCreateWithoutPraticheInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateWithoutPraticheInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateOrConnectWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteCreateOrConnectWithoutPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutPraticheInput, + _i2.UtenteUncheckedCreateWithoutPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class UtenteCreateNestedOneWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteCreateNestedOneWithoutPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutPraticheInput, + _i2.UtenteUncheckedCreateWithoutPraticheInput>? create; + + final _i2.UtenteCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.UtenteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PraticaCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'contratto': contratto, + }; +} + +class PraticaCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutStatoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutStatoInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutStatoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i2.PraticaCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoPraticaCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutStatoInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class StatoPraticaCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.StatoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutFornitureInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedCreateWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutFornitureInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutFornitureInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitureInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitureInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoCreateNestedOneWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedOneWithoutFornitureInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitureInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitureInput>? create; + + final _i2.ServizioEwoCreateOrConnectWithoutFornitureInput? connectOrCreate; + + final _i2.ServizioEwoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraCreateWithoutFornituraGasInput({ + this.uuid, + this.etichetta, + required this.domicilio, + required this.servizioEwo, + this.fornituraLuce, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i2.DomicilioCreateNestedOneWithoutFornitureInput domicilio; + + final _i2.ServizioEwoCreateNestedOneWithoutFornitureInput servizioEwo; + + final _i2.FornituraLuceCreateNestedOneWithoutFornituraInput? fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + }; +} + +class FornituraUncheckedCreateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateWithoutFornituraGasInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + required this.servizioEwoId, + this.fornituraLuce, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + final String servizioEwoId; + + final _i2.FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput? + fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + }; +} + +class FornituraCreateOrConnectWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraCreateOrConnectWithoutFornituraGasInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraGasInput, + _i2.FornituraUncheckedCreateWithoutFornituraGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraCreateNestedOneWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraCreateNestedOneWithoutFornituraGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraGasInput, + _i2.FornituraUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.FornituraCreateOrConnectWithoutFornituraGasInput? connectOrCreate; + + final _i2.FornituraWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraGasCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + required this.fornitura, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.FornituraCreateNestedOneWithoutFornituraGasInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateWithoutContrattiEnelGasInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? classeMisuratoreGasId; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + }; +} + +class FornituraGasCreateOrConnectWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateOrConnectWithoutContrattiEnelGasInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedCreateWithoutContrattiEnelGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraGasCreateNestedOneWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateNestedOneWithoutContrattiEnelGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.FornituraGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelGasCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateWithoutStatoInput({ + this.uuid, + required this.fornituraGas, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.FornituraGasCreateNestedOneWithoutContrattiEnelGasInput + fornituraGas; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelGasInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelGasInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutContrattiEnelFibraInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateOrConnectWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutContrattiEnelFibraInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelFibraCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateWithoutContrattoInput({ + this.uuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + required this.stato, + this.offerta, + this.domicilio, + }); + + final String? uuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput stato; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelFibraInput? offerta; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelFibraInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelFibraCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateOrConnectWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoCreateOrConnectWithoutContrattiEnelLuceInput({ + required this.where, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ContrattoCreateNestedOneWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedOneWithoutContrattiEnelLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.ContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class OffertaCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateOrConnectWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaCreateOrConnectWithoutContrattiEnelLuceInput({ + required this.where, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OffertaCreateNestedOneWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaCreateNestedOneWithoutContrattiEnelLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.OffertaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateWithoutFornituraLuceInput({ + this.uuid, + required this.stato, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelLuceInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelLuceInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceCreateNestedManyWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateNestedManyWithoutFornituraLuceInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput, + Iterable< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornituraLuceCreateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateWithoutFornituraInput({ + this.uuid, + required this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final String? uuid; + + final String pod; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceCreateNestedOneWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateNestedOneWithoutFornituraInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraCreateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraCreateWithoutServizioEwoInput({ + this.uuid, + this.etichetta, + required this.domicilio, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i2.DomicilioCreateNestedOneWithoutFornitureInput domicilio; + + final _i2.FornituraLuceCreateNestedOneWithoutFornituraInput? fornituraLuce; + + final _i2.FornituraGasCreateNestedOneWithoutFornituraInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateNestedManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraCreateNestedManyWithoutServizioEwoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.FornituraCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i2.FornituraCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutTipiPraticheInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedCreateWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateWithoutTipiPraticheInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateOrConnectWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateOrConnectWithoutTipiPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ServizioEwoCreateNestedManyWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedManyWithoutTipiPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutTipiPraticheInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutTipiPraticheInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class TipoPraticaCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateWithoutPraticheInput({ + required this.id, + required this.nome, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutTipiPraticheInput? serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class ServizioEwoUncheckedCreateNestedManyWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateNestedManyWithoutTipiPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutTipiPraticheInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutTipiPraticheInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class TipoPraticaUncheckedCreateWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedCreateWithoutPraticheInput({ + required this.id, + required this.nome, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutTipiPraticheInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class TipoPraticaCreateOrConnectWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateOrConnectWithoutPraticheInput({ + required this.where, + required this.create, + }); + + final _i2.TipoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutPraticheInput, + _i2.TipoPraticaUncheckedCreateWithoutPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class TipoPraticaCreateNestedOneWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateNestedOneWithoutPraticheInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutPraticheInput, + _i2.TipoPraticaUncheckedCreateWithoutPraticheInput>? create; + + final _i2.TipoPraticaCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.TipoPraticaWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PraticaCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.PraticaCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutDomiciliInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutDomiciliInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutDomiciliInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutDomiciliInput, + _i2.SoggettoUncheckedCreateWithoutDomiciliInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutDomiciliInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutDomiciliInput, + _i2.SoggettoUncheckedCreateWithoutDomiciliInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutDomiciliInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutFornitureInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.contrattiEnelXAssicurazione, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedCreateWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateWithoutFornitureInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateOrConnectWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioCreateOrConnectWithoutFornitureInput({ + required this.where, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutFornitureInput, + _i2.DomicilioUncheckedCreateWithoutFornitureInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class DomicilioCreateNestedOneWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedOneWithoutFornitureInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutFornitureInput, + _i2.DomicilioUncheckedCreateWithoutFornitureInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutFornitureInput? connectOrCreate; + + final _i2.DomicilioWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraCreateWithoutFornituraLuceInput({ + this.uuid, + this.etichetta, + required this.domicilio, + required this.servizioEwo, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i2.DomicilioCreateNestedOneWithoutFornitureInput domicilio; + + final _i2.ServizioEwoCreateNestedOneWithoutFornitureInput servizioEwo; + + final _i2.FornituraGasCreateNestedOneWithoutFornituraInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUncheckedCreateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateWithoutFornituraLuceInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + required this.servizioEwoId, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + final String servizioEwoId; + + final _i2.FornituraGasUncheckedCreateNestedOneWithoutFornituraInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateOrConnectWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraCreateOrConnectWithoutFornituraLuceInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraLuceInput, + _i2.FornituraUncheckedCreateWithoutFornituraLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraCreateNestedOneWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraCreateNestedOneWithoutFornituraLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraLuceInput, + _i2.FornituraUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.FornituraCreateOrConnectWithoutFornituraLuceInput? connectOrCreate; + + final _i2.FornituraWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class FornituraLuceCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + required this.fornitura, + }); + + final String? uuid; + + final String pod; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + final _i2.FornituraCreateNestedOneWithoutFornituraLuceInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput({ + this.uuid, + required this.pod, + required this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + }); + + final String? uuid; + + final String pod; + + final String fornituraUuid; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + }; +} + +class FornituraLuceCreateOrConnectWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateOrConnectWithoutContrattiEnelLuceInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateWithoutStatoInput({ + this.uuid, + required this.fornituraLuce, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput + fornituraLuce; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelLuceInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelLuceInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutContrattiEnelGasInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateOrConnectWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutContrattiEnelGasInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelGasCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateWithoutContrattoInput({ + this.uuid, + required this.stato, + required this.fornituraGas, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput stato; + + final _i2.FornituraGasCreateNestedOneWithoutContrattiEnelGasInput + fornituraGas; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelGasInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelGasCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutSoggettoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.ContrattoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutPraticheIntestateInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutPraticheIntestateInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutPraticheIntestateInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedCreateWithoutPraticheIntestateInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutPraticheIntestateInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedCreateWithoutPraticheIntestateInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutPraticheIntestateInput? + connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PraticaCreateWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaCreateWithoutTipoPraticaInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaCreateNestedManyWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaCreateNestedManyWithoutTipoPraticaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutTipoPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutTipoPraticaInput>, + _i1.PrismaUnion< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput, + Iterable< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput, + Iterable<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput>>? + connectOrCreate; + + final _i2.PraticaCreateManyTipoPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoPraticaCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutTipoPraticaInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class TipoPraticaCreateNestedManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateNestedManyWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.TipoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.TipoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutModuliContrattoInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + }; +} + +class ServizioEwoCreateNestedManyWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedManyWithoutModuliContrattoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutModuliContrattoInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutModuliContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ModuloContrattoCreateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateWithoutFornitoreInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + this.serviziEwoCollegabili, + this.contratti, + required this.tipoModulo, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ServizioEwoCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoCreateNestedManyWithoutModuloInput? contratti; + + final _i2.TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoCreateNestedManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateNestedManyWithoutFornitoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i2.ModuloContrattoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class FornitoreCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.moduliContratto, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ModuloContrattoCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + final _i2.ProdottoCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUncheckedCreateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedCreateWithoutServiziEwoInput({ + required this.id, + required this.nome, + this.moduliContratto, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ModuloContrattoUncheckedCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreCreateOrConnectWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreCreateOrConnectWithoutServiziEwoInput({ + required this.where, + required this.create, + }); + + final _i2.FornitoreWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutServiziEwoInput, + _i2.FornitoreUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornitoreCreateNestedOneWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreCreateNestedOneWithoutServiziEwoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutServiziEwoInput, + _i2.FornitoreUncheckedCreateWithoutServiziEwoInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutServiziEwoInput? connectOrCreate; + + final _i2.FornitoreWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ServizioEwoCreateWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateWithoutStatiPossibiliContrattiInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i1.PrismaUnion< + Iterable< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutContrattiEnelLuceInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateOrConnectWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutContrattiEnelLuceInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelLuceCreateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateWithoutContrattoInput({ + this.uuid, + required this.stato, + required this.fornituraLuce, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput stato; + + final _i2.FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput + fornituraLuce; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelLuceInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceCreateNestedManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateNestedManyWithoutContrattoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i2.ContrattoEnelLuceCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ContrattoCreateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoCreateWithoutStatoInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoCreateNestedManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoCreateNestedManyWithoutStatoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutStatoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i2.ContrattoCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class StatoContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput({ + required this.where, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2 + .StatoContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput({ + this.uuid, + required this.stato, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class DomicilioCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioCreateWithoutSoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateNestedManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioCreateNestedManyWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.DomicilioCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.DomicilioUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.DomicilioUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.DomicilioCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.DomicilioCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i2.DomicilioCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class SoggettoCreateWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutNumeriTelefonoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutNumeriTelefonoInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoCreateOrConnectWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutNumeriTelefonoInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedCreateWithoutNumeriTelefonoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutNumeriTelefonoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedCreateWithoutNumeriTelefonoInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutNumeriTelefonoInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class NumeroTelefonoCreateWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateWithoutLegaleRappresentateInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggetto, + this.referente, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutNumeriTelefonoInput? soggetto; + + final _i2.ReferenteCreateNestedOneWithoutNumeroTelefonoInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + }; +} + +class NumeroTelefonoCreateNestedOneWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateNestedOneWithoutLegaleRappresentateInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput? + connectOrCreate; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + final _i2.IndirizzoEmailCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteCreateNestedOneWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateNestedOneWithoutSoggettoBusinessInfoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoBusinessInfoCreateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateWithoutSoggettoInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + final _i2.ReferenteCreateNestedOneWithoutSoggettoBusinessInfoInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class SoggettoCreateInput implements _i1.JsonConvertible> { + const SoggettoCreateInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedCreateInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + final _i2.PrivacyUncheckedCreateNestedOneWithoutSoggettoInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class AffectedRowsOutput { + const AffectedRowsOutput({this.count}); + + factory AffectedRowsOutput.fromJson(Map json) => + AffectedRowsOutput(count: json['count']); + + final int? count; +} + +class SoggettoCreateManyInput + implements _i1.JsonConvertible> { + const SoggettoCreateManyInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class StringFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const StringFieldUpdateOperationsInput({this.set}); + + final String? set; + + @override + Map toJson() => {'set': set}; +} + +class NullableStringFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableStringFieldUpdateOperationsInput({this.set}); + + final _i1.PrismaUnion? set; + + @override + Map toJson() => {'set': set}; +} + +class EnumTipoSoggettoFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumTipoSoggettoFieldUpdateOperationsInput({this.set}); + + final _i3.TipoSoggetto? set; + + @override + Map toJson() => {'set': set}; +} + +class DateTimeFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const DateTimeFieldUpdateOperationsInput({this.set}); + + final DateTime? set; + + @override + Map toJson() => {'set': set}; +} + +class NullableDateTimeFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableDateTimeFieldUpdateOperationsInput({this.set}); + + final _i1.PrismaUnion? set; + + @override + Map toJson() => {'set': set}; +} + +class NullableBoolFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableBoolFieldUpdateOperationsInput({this.set}); + + final _i1.PrismaUnion? set; + + @override + Map toJson() => {'set': set}; +} + +class BoolFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const BoolFieldUpdateOperationsInput({this.set}); + + final bool? set; + + @override + Map toJson() => {'set': set}; +} + +class NullableIntFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableIntFieldUpdateOperationsInput({ + this.set, + this.increment, + this.decrement, + this.multiply, + this.divide, + }); + + final _i1.PrismaUnion? set; + + final int? increment; + + final int? decrement; + + final int? multiply; + + final int? divide; + + @override + Map toJson() => { + 'set': set, + 'increment': increment, + 'decrement': decrement, + 'multiply': multiply, + 'divide': divide, + }; +} + +class EnumTipoServizioEwoFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumTipoServizioEwoFieldUpdateOperationsInput({this.set}); + + final _i3.TipoServizioEwo? set; + + @override + Map toJson() => {'set': set}; +} + +class EnumCanaleFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumCanaleFieldUpdateOperationsInput({this.set}); + + final _i3.Canale? set; + + @override + Map toJson() => {'set': set}; +} + +class NullableFloatFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableFloatFieldUpdateOperationsInput({ + this.set, + this.increment, + this.decrement, + this.multiply, + this.divide, + }); + + final _i1.PrismaUnion? set; + + final double? increment; + + final double? decrement; + + final double? multiply; + + final double? divide; + + @override + Map toJson() => { + 'set': set, + 'increment': increment, + 'decrement': decrement, + 'multiply': multiply, + 'divide': divide, + }; +} + +class FloatFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const FloatFieldUpdateOperationsInput({ + this.set, + this.increment, + this.decrement, + this.multiply, + this.divide, + }); + + final double? set; + + final double? increment; + + final double? decrement; + + final double? multiply; + + final double? divide; + + @override + Map toJson() => { + 'set': set, + 'increment': increment, + 'decrement': decrement, + 'multiply': multiply, + 'divide': divide, + }; +} + +class ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoLuceUpsertWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpsertWithoutFornituraLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput> update; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput> create; + + final _i2.ConsumoAnnuoLuceWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ConsumoAnnuoLuceUpdateToOneWithWhereWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpdateToOneWithWhereWithoutFornituraLuceInput({ + this.where, + required this.data, + }); + + final _i2.ConsumoAnnuoLuceWhereInput? where; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ConsumoAnnuoLuceUpdateOneWithoutFornituraLuceNestedInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpdateOneWithoutFornituraLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput? + connectOrCreate; + + final _i2.ConsumoAnnuoLuceUpsertWithoutFornituraLuceInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ConsumoAnnuoLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ConsumoAnnuoLuceUpdateToOneWithWhereWithoutFornituraLuceInput, + _i1.PrismaUnion<_i2.ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class EnumServizioContrattoEnelFibraFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumServizioContrattoEnelFibraFieldUpdateOperationsInput({this.set}); + + final _i3.ServizioContrattoEnelFibra? set; + + @override + Map toJson() => {'set': set}; +} + +class EnumTipoContrattoEnelFibraFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumTipoContrattoEnelFibraFieldUpdateOperationsInput({this.set}); + + final _i3.TipoContrattoEnelFibra? set; + + @override + Map toJson() => {'set': set}; +} + +class EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput({this.set}); + + final _i3.TecnologiaContrattoEnelFibra? set; + + @override + Map toJson() => {'set': set}; +} + +class ClasseMisuratoreGasUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpdateWithoutFornituraGasInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasUncheckedUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUncheckedUpdateWithoutFornituraGasInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasUpsertWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpsertWithoutFornituraGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasUpdateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedUpdateWithoutFornituraGasInput> update; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasCreateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput> create; + + final _i2.ClasseMisuratoreGasWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ClasseMisuratoreGasUpdateToOneWithWhereWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpdateToOneWithWhereWithoutFornituraGasInput({ + this.where, + required this.data, + }); + + final _i2.ClasseMisuratoreGasWhereInput? where; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasUpdateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedUpdateWithoutFornituraGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasCreateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ClasseMisuratoreGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ClasseMisuratoreGasUpsertWithoutFornituraGasInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ClasseMisuratoreGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ClasseMisuratoreGasUpdateToOneWithWhereWithoutFornituraGasInput, + _i1.PrismaUnion<_i2.ClasseMisuratoreGasUpdateWithoutFornituraGasInput, + _i2.ClasseMisuratoreGasUncheckedUpdateWithoutFornituraGasInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ConsumoAnnuoGasUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpdateWithoutFornituraGasInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoGasUpsertWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpsertWithoutFornituraGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasUpdateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput> update; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput> create; + + final _i2.ConsumoAnnuoGasWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ConsumoAnnuoGasUpdateToOneWithWhereWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpdateToOneWithWhereWithoutFornituraGasInput({ + this.where, + required this.data, + }); + + final _i2.ConsumoAnnuoGasWhereInput? where; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasUpdateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ConsumoAnnuoGasUpsertWithoutFornituraGasInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ConsumoAnnuoGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ConsumoAnnuoGasUpdateToOneWithWhereWithoutFornituraGasInput, + _i1.PrismaUnion<_i2.ConsumoAnnuoGasUpdateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class EnumRuoloUtenteFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumRuoloUtenteFieldUpdateOperationsInput({this.set}); + + final _i3.RuoloUtente? set; + + @override + Map toJson() => {'set': set}; +} + +class ReferenteUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutReferenteNestedInput? numeroTelefono; + + final _i2.IndirizzoEmailUpdateOneWithoutReferenteNestedInput? indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class NumeroTelefonoUncheckedUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateWithoutReferenteInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentateUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + }; +} + +class NumeroTelefonoUpdateToOneWithWhereWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateToOneWithWhereWithoutReferenteInput({ + this.where, + required this.data, + }); + + final _i2.NumeroTelefonoWhereInput? where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutReferenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NumeroTelefonoUncheckedUpdateOneWithoutReferenteNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateOneWithoutReferenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.NumeroTelefonoUpsertWithoutReferenteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateToOneWithWhereWithoutReferenteInput, + _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutReferenteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class IndirizzoEmailUncheckedUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateWithoutReferenteInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentanteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + }; +} + +class IndirizzoEmailUpdateToOneWithWhereWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateToOneWithWhereWithoutReferenteInput({ + this.where, + required this.data, + }); + + final _i2.IndirizzoEmailWhereInput? where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutReferenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IndirizzoEmailUncheckedUpdateOneWithoutReferenteNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateOneWithoutReferenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput>? create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.IndirizzoEmailUpsertWithoutReferenteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateToOneWithWhereWithoutReferenteInput, + _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutReferenteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUncheckedUpdateOneWithoutReferenteNestedInput? + numeroTelefono; + + final _i2.IndirizzoEmailUncheckedUpdateOneWithoutReferenteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteUpsertWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUpsertWithoutSoggettoBusinessInfoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput> update; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput> create; + + final _i2.ReferenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ReferenteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const ReferenteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput({ + this.where, + required this.data, + }); + + final _i2.ReferenteWhereInput? where; + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ReferenteUpdateOneWithoutSoggettoBusinessInfoNestedInput + implements _i1.JsonConvertible> { + const ReferenteUpdateOneWithoutSoggettoBusinessInfoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.ReferenteUpsertWithoutSoggettoBusinessInfoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ReferenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ReferenteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput, + _i1.PrismaUnion<_i2.ReferenteUpdateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ProduttoreUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreUpdateWithoutProdottiInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreUncheckedUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreUncheckedUpdateWithoutProdottiInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreUpsertWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreUpsertWithoutProdottiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ProduttoreUpdateWithoutProdottiInput, + _i2.ProduttoreUncheckedUpdateWithoutProdottiInput> update; + + final _i1.PrismaUnion<_i2.ProduttoreCreateWithoutProdottiInput, + _i2.ProduttoreUncheckedCreateWithoutProdottiInput> create; + + final _i2.ProduttoreWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ProduttoreUpdateToOneWithWhereWithoutProdottiInput + implements _i1.JsonConvertible> { + const ProduttoreUpdateToOneWithWhereWithoutProdottiInput({ + this.where, + required this.data, + }); + + final _i2.ProduttoreWhereInput? where; + + final _i1.PrismaUnion<_i2.ProduttoreUpdateWithoutProdottiInput, + _i2.ProduttoreUncheckedUpdateWithoutProdottiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProduttoreUpdateOneRequiredWithoutProdottiNestedInput + implements _i1.JsonConvertible> { + const ProduttoreUpdateOneRequiredWithoutProdottiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ProduttoreCreateWithoutProdottiInput, + _i2.ProduttoreUncheckedCreateWithoutProdottiInput>? create; + + final _i2.ProduttoreCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.ProduttoreUpsertWithoutProdottiInput? upsert; + + final _i2.ProduttoreWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ProduttoreUpdateToOneWithWhereWithoutProdottiInput, + _i1.PrismaUnion<_i2.ProduttoreUpdateWithoutProdottiInput, + _i2.ProduttoreUncheckedUpdateWithoutProdottiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelLuceUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithoutOffertaInput({ + this.uuid, + this.stato, + this.fornituraLuce, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + stato; + + final _i2.FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + fornituraLuce; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + }; +} + +class ContrattoEnelLuceUncheckedUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutOffertaInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutOffertaInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutOffertaInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceScalarWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelLuceScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyMutationInput({this.uuid}); + + final _i1.PrismaUnion? uuid; + + @override + Map toJson() => {'uuid': uuid}; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateManyMutationInput, + _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelGasUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithoutOffertaInput({ + this.uuid, + this.stato, + this.fornituraGas, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + stato; + + final _i2.FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + fornituraGas; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + }; +} + +class ContrattoEnelGasUncheckedUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutOffertaInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutOffertaInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutOffertaInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasScalarWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelGasScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraGasUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyMutationInput({this.uuid}); + + final _i1.PrismaUnion? uuid; + + @override + Map toJson() => {'uuid': uuid}; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + }; +} + +class ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateManyMutationInput, + _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class IntFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const IntFieldUpdateOperationsInput({ + this.set, + this.increment, + this.decrement, + this.multiply, + this.divide, + }); + + final int? set; + + final int? increment; + + final int? decrement; + + final int? multiply; + + final int? divide; + + @override + Map toJson() => { + 'set': set, + 'increment': increment, + 'decrement': decrement, + 'multiply': multiply, + 'divide': divide, + }; +} + +class ZonaNegozioUpdateWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpdateWithoutNegoziInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioUncheckedUpdateWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioUncheckedUpdateWithoutNegoziInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioUpsertWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpsertWithoutNegoziInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioUpdateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedUpdateWithoutNegoziInput> update; + + final _i1.PrismaUnion<_i2.ZonaNegozioCreateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedCreateWithoutNegoziInput> create; + + final _i2.ZonaNegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ZonaNegozioUpdateToOneWithWhereWithoutNegoziInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpdateToOneWithWhereWithoutNegoziInput({ + this.where, + required this.data, + }); + + final _i2.ZonaNegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.ZonaNegozioUpdateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedUpdateWithoutNegoziInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioCreateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedCreateWithoutNegoziInput>? create; + + final _i2.ZonaNegozioCreateOrConnectWithoutNegoziInput? connectOrCreate; + + final _i2.ZonaNegozioUpsertWithoutNegoziInput? upsert; + + final _i2.ZonaNegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ZonaNegozioUpdateToOneWithWhereWithoutNegoziInput, + _i1.PrismaUnion<_i2.ZonaNegozioUpdateWithoutNegoziInput, + _i2.ZonaNegozioUncheckedUpdateWithoutNegoziInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class PrivacyUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUpdateWithoutSoggettoInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + }; +} + +class PrivacyUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + }; +} + +class PrivacyUpsertWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUpsertWithoutSoggettoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.PrivacyUpdateWithoutSoggettoInput, + _i2.PrivacyUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput> create; + + final _i2.PrivacyWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class PrivacyUpdateToOneWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PrivacyUpdateToOneWithWhereWithoutSoggettoInput({ + this.where, + required this.data, + }); + + final _i2.PrivacyWhereInput? where; + + final _i1.PrismaUnion<_i2.PrivacyUpdateWithoutSoggettoInput, + _i2.PrivacyUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PrivacyUpdateOneWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const PrivacyUpdateOneWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.PrivacyCreateOrConnectWithoutSoggettoInput? connectOrCreate; + + final _i2.PrivacyUpsertWithoutSoggettoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.PrivacyWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.PrivacyUpdateToOneWithWhereWithoutSoggettoInput, + _i1.PrismaUnion<_i2.PrivacyUpdateWithoutSoggettoInput, + _i2.PrivacyUncheckedUpdateWithoutSoggettoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutLeadsInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'privacy': privacy, + }; +} + +class NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUpdateToOneWithWhereWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateToOneWithWhereWithoutLegaleRappresentateInput({ + this.where, + required this.data, + }); + + final _i2.NumeroTelefonoWhereInput? where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NumeroTelefonoUncheckedUpdateOneWithoutLegaleRappresentateNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateOneWithoutLegaleRappresentateNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput? + connectOrCreate; + + final _i2.NumeroTelefonoUpsertWithoutLegaleRappresentateInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateToOneWithWhereWithoutLegaleRappresentateInput, + _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateWithoutLegaleRappresentateInput, + _i2 + .NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUpdateToOneWithWhereWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateToOneWithWhereWithoutLegaleRappresentanteInput({ + this.where, + required this.data, + }); + + final _i2.IndirizzoEmailWhereInput? where; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IndirizzoEmailUncheckedUpdateOneWithoutLegaleRappresentanteNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateOneWithoutLegaleRappresentanteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.IndirizzoEmailUpsertWithoutLegaleRappresentanteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .IndirizzoEmailUpdateToOneWithWhereWithoutLegaleRappresentanteInput, + _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithoutLegaleRappresentanteInput, + _i2 + .IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2 + .NumeroTelefonoUncheckedUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + final _i2 + .IndirizzoEmailUncheckedUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput({ + this.where, + required this.data, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LegaleRappresentanteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteUpsertWithoutSoggettoBusinessInfoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2 + .LegaleRappresentanteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput, + _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ReferenteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.ReferenteUpsertWithoutSoggettoBusinessInfoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ReferenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ReferenteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput, + _i1.PrismaUnion<_i2.ReferenteUpdateWithoutSoggettoBusinessInfoInput, + _i2.ReferenteUncheckedUpdateWithoutSoggettoBusinessInfoInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i2 + .LegaleRappresentanteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + final _i2.ReferenteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoUpdateToOneWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateToOneWithWhereWithoutSoggettoInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoBusinessInfoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoUpsertWithoutSoggettoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateToOneWithWhereWithoutSoggettoInput, + _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateWithoutDomicilioInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutDomicilioInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneScalarWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyMutationInput({this.uuid}); + + final _i1.PrismaUnion? uuid; + + @override + Map toJson() => {'uuid': uuid}; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneScalarWhereInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyMutationInput, + _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ConsumoAnnuoLuceUncheckedUpdateOneWithoutFornituraLuceNestedInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedUpdateOneWithoutFornituraLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceCreateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.ConsumoAnnuoLuceCreateOrConnectWithoutFornituraLuceInput? + connectOrCreate; + + final _i2.ConsumoAnnuoLuceUpsertWithoutFornituraLuceInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ConsumoAnnuoLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ConsumoAnnuoLuceUpdateToOneWithWhereWithoutFornituraLuceInput, + _i1.PrismaUnion<_i2.ConsumoAnnuoLuceUpdateWithoutFornituraLuceInput, + _i2.ConsumoAnnuoLuceUncheckedUpdateWithoutFornituraLuceInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelLuceUncheckedUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateWithoutFornituraLuceInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutFornituraLuceInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutFornituraLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateManyMutationInput, + _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput, + Iterable< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornituraLuceUncheckedUpdateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateWithoutFornituraInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceUpdateToOneWithWhereWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateToOneWithWhereWithoutFornituraInput({ + this.where, + required this.data, + }); + + final _i2.FornituraLuceWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutFornituraInput, + _i2.FornituraLuceUncheckedUpdateWithoutFornituraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraLuceUpsertWithoutFornituraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraLuceUpdateToOneWithWhereWithoutFornituraInput, + _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutFornituraInput, + _i2.FornituraLuceUncheckedUpdateWithoutFornituraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasCreateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.ConsumoAnnuoGasCreateOrConnectWithoutFornituraGasInput? + connectOrCreate; + + final _i2.ConsumoAnnuoGasUpsertWithoutFornituraGasInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ConsumoAnnuoGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ConsumoAnnuoGasUpdateToOneWithWhereWithoutFornituraGasInput, + _i1.PrismaUnion<_i2.ConsumoAnnuoGasUpdateWithoutFornituraGasInput, + _i2.ConsumoAnnuoGasUncheckedUpdateWithoutFornituraGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelGasUncheckedUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateWithoutFornituraGasInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutFornituraGasInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutFornituraGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateManyMutationInput, + _i2.ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyFornituraGasInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornituraGasUncheckedUpdateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateWithoutFornituraInput({ + this.uuid, + this.pdr, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? classeMisuratoreGasId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasUpdateToOneWithWhereWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateToOneWithWhereWithoutFornituraInput({ + this.where, + required this.data, + }); + + final _i2.FornituraGasWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutFornituraInput, + _i2.FornituraGasUncheckedUpdateWithoutFornituraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraGasUpsertWithoutFornituraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.FornituraGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateToOneWithWhereWithoutFornituraInput, + _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutFornituraInput, + _i2.FornituraGasUncheckedUpdateWithoutFornituraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class FornituraUncheckedUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateWithoutDomicilioInput({ + this.uuid, + this.etichetta, + this.servizioEwoId, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUpdateWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutDomicilioInput, + _i2.FornituraUncheckedUpdateWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraScalarWhereInput + implements _i1.JsonConvertible> { + const FornituraScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? AND; + + final Iterable<_i2.FornituraScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraUpdateManyMutationInput + implements _i1.JsonConvertible> { + const FornituraUpdateManyMutationInput({ + this.uuid, + this.etichetta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + }; +} + +class FornituraUncheckedUpdateManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateManyWithoutDomicilioInput({ + this.uuid, + this.etichetta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraUpdateManyWithWhereWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUpdateManyWithWhereWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyMutationInput, + _i2.FornituraUncheckedUpdateManyWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraUncheckedUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.FornituraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.FornituraUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.FornituraUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.FornituraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.FornituraUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.FornituraUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutContrattoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + }; +} + +class PraticaUncheckedUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutContrattoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpsertWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithoutContrattoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutContrattoInput, + _i2.PraticaUncheckedUpdateWithoutContrattoInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutContrattoInput, + _i2.PraticaUncheckedCreateWithoutContrattoInput> create; + + final _i2.PraticaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class PraticaUpdateToOneWithWhereWithoutContrattoInput + implements _i1.JsonConvertible> { + const PraticaUpdateToOneWithWhereWithoutContrattoInput({ + this.where, + required this.data, + }); + + final _i2.PraticaWhereInput? where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutContrattoInput, + _i2.PraticaUncheckedUpdateWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUpdateOneWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateOneWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutContrattoInput, + _i2.PraticaUncheckedCreateWithoutContrattoInput>? create; + + final _i2.PraticaCreateOrConnectWithoutContrattoInput? connectOrCreate; + + final _i2.PraticaUpsertWithoutContrattoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.PraticaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.PraticaUpdateToOneWithWhereWithoutContrattoInput, + _i1.PrismaUnion<_i2.PraticaUpdateWithoutContrattoInput, + _i2.PraticaUncheckedUpdateWithoutContrattoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutModuloInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + }; +} + +class ContrattoEnelLuceUncheckedUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutContrattoInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateManyMutationInput, + _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelGasUncheckedUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutContrattoInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateManyMutationInput, + _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelFibraUncheckedUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutContrattoInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraScalarWhereInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? AND; + + final Iterable<_i2.ContrattoEnelFibraScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.EnumServizioContrattoEnelFibraFilter, + _i3.ServizioContrattoEnelFibra>? servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTipoContrattoEnelFibraFilter, + _i3.TipoContrattoEnelFibra>? tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTecnologiaContrattoEnelFibraFilter, + _i3.TecnologiaContrattoEnelFibra>? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyMutationInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateManyMutationInput, + _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutContrattoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoInput({ + this.uuid, + this.statoContrattoId, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneScalarWhereInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyMutationInput, + _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUncheckedUpdateWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutModuloInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutModuloInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutModuloInput, + _i2.ContrattoUncheckedUpdateWithoutModuloInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutModuloInput, + _i2.ContrattoUncheckedCreateWithoutModuloInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutModuloInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutModuloInput, + _i2.ContrattoUncheckedUpdateWithoutModuloInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoScalarWhereInput + implements _i1.JsonConvertible> { + const ContrattoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? AND; + + final Iterable<_i2.ContrattoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAttivazione; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.BoolNullableFilter, + _i1.PrismaUnion>? trend; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? marketingGruppoEnel; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? profilazioneEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? bollettaWeb; + + final _i1.PrismaUnion<_i2.BoolFilter, bool>? rid; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataCessazione; + + final _i1 + .PrismaUnion<_i2.IntNullableFilter, _i1.PrismaUnion>? + mesiDurata; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoContrattoId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? praticaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? moduloContrattoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyMutationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoUncheckedUpdateManyWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutModuloInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + }; +} + +class ContrattoUpdateManyWithWhereWithoutModuloInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutModuloInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutModuloInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUpdateManyWithoutModuloNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutModuloNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutModuloInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutModuloInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutModuloInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutModuloInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutModuloInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutModuloInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutModuloInput>>? upsert; + + final _i2.ContrattoCreateManyModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutModuloInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutModuloInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutModuloInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutModuloInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelFibraUncheckedUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateWithoutDomicilioInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutDomicilioInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateManyMutationInput, + _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NullableEnumTipoStatoFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const NullableEnumTipoStatoFieldUpdateOperationsInput({this.set}); + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? set; + + @override + Map toJson() => {'set': set}; +} + +class StatoOpportunitaUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpdateWithoutLeadsInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaUncheckedUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUncheckedUpdateWithoutLeadsInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaUpsertWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpsertWithoutLeadsInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaUpdateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedUpdateWithoutLeadsInput> update; + + final _i1.PrismaUnion<_i2.StatoOpportunitaCreateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedCreateWithoutLeadsInput> create; + + final _i2.StatoOpportunitaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoOpportunitaUpdateToOneWithWhereWithoutLeadsInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpdateToOneWithWhereWithoutLeadsInput({ + this.where, + required this.data, + }); + + final _i2.StatoOpportunitaWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoOpportunitaUpdateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedUpdateWithoutLeadsInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaCreateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedCreateWithoutLeadsInput>? create; + + final _i2.StatoOpportunitaCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.StatoOpportunitaUpsertWithoutLeadsInput? upsert; + + final _i2.StatoOpportunitaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoOpportunitaUpdateToOneWithWhereWithoutLeadsInput, + _i1.PrismaUnion<_i2.StatoOpportunitaUpdateWithoutLeadsInput, + _i2.StatoOpportunitaUncheckedUpdateWithoutLeadsInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class DomicilioUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutLeadsInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUncheckedUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutProdottiOrdinatiInput, + _i2.ProdottoUncheckedUpdateWithoutProdottiOrdinatiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoScalarWhereInput + implements _i1.JsonConvertible> { + const ProdottoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? AND; + + final Iterable<_i2.ProdottoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? modello; + + final _i1.PrismaUnion<_i2.FloatNullableFilter, + _i1.PrismaUnion>? prezzo; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileDal; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? vendibileAl; + + final _i1.PrismaUnion<_i2.StringFilter, String>? produttoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoProdottoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyMutationInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + }; +} + +class ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyMutationInput, + _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProdottiOrdinatiInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput, + Iterable< + _i2 + .ProdottoUncheckedCreateWithoutProdottiOrdinatiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput>>? + update; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OrdineUncheckedUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutDomicilioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutDomicilioInput, + _i2.OrdineUncheckedUpdateWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineScalarWhereInput + implements _i1.JsonConvertible> { + const OrdineScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? AND; + + final Iterable<_i2.OrdineScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.FloatFilter, double>? valore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoOrdineId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyMutationInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyMutationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + }; +} + +class OrdineUncheckedUpdateManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutDomicilioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutDomicilioInput>>? upsert; + + final _i2.OrdineCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutDomicilioInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutDomicilioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUncheckedUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutLeadsInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class DomicilioUpsertWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithoutLeadsInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutLeadsInput, + _i2.DomicilioUncheckedUpdateWithoutLeadsInput> update; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutLeadsInput, + _i2.DomicilioUncheckedCreateWithoutLeadsInput> create; + + final _i2.DomicilioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class DomicilioUpdateToOneWithWhereWithoutLeadsInput + implements _i1.JsonConvertible> { + const DomicilioUpdateToOneWithWhereWithoutLeadsInput({ + this.where, + required this.data, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutLeadsInput, + _i2.DomicilioUncheckedUpdateWithoutLeadsInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUpdateOneWithoutLeadsNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateOneWithoutLeadsNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutLeadsInput, + _i2.DomicilioUncheckedCreateWithoutLeadsInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.DomicilioUpsertWithoutLeadsInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.DomicilioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.DomicilioUpdateToOneWithWhereWithoutLeadsInput, + _i1.PrismaUnion<_i2.DomicilioUpdateWithoutLeadsInput, + _i2.DomicilioUncheckedUpdateWithoutLeadsInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class EnumTipoStatoFieldUpdateOperationsInput + implements _i1.JsonConvertible> { + const EnumTipoStatoFieldUpdateOperationsInput({this.set}); + + final _i3.TipoStato? set; + + @override + Map toJson() => {'set': set}; +} + +class StatoOrdineUpdateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineUpdateWithoutOrdiniInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineUncheckedUpdateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineUncheckedUpdateWithoutOrdiniInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineUpsertWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineUpsertWithoutOrdiniInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineUpdateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedUpdateWithoutOrdiniInput> update; + + final _i1.PrismaUnion<_i2.StatoOrdineCreateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedCreateWithoutOrdiniInput> create; + + final _i2.StatoOrdineWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoOrdineUpdateToOneWithWhereWithoutOrdiniInput + implements _i1.JsonConvertible> { + const StatoOrdineUpdateToOneWithWhereWithoutOrdiniInput({ + this.where, + required this.data, + }); + + final _i2.StatoOrdineWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoOrdineUpdateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedUpdateWithoutOrdiniInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoOrdineUpdateOneWithoutOrdiniNestedInput + implements _i1.JsonConvertible> { + const StatoOrdineUpdateOneWithoutOrdiniNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineCreateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedCreateWithoutOrdiniInput>? create; + + final _i2.StatoOrdineCreateOrConnectWithoutOrdiniInput? connectOrCreate; + + final _i2.StatoOrdineUpsertWithoutOrdiniInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.StatoOrdineWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoOrdineUpdateToOneWithWhereWithoutOrdiniInput, + _i1.PrismaUnion<_i2.StatoOrdineUpdateWithoutOrdiniInput, + _i2.StatoOrdineUncheckedUpdateWithoutOrdiniInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class OpportunitaUpdateWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateWithoutAgentiInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUpdateManyWithoutOpportunitaGestiteNestedInput? gestoriLead; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + }; +} + +class OrdineUncheckedUpdateWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutLeadInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutLeadInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutLeadInput, + _i2.OrdineUncheckedUpdateWithoutLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutLeadInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutLeadInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutLeadNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutLeadInput, + Iterable<_i2.OrdineUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutLeadInput, + Iterable<_i2.OrdineCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutLeadInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutLeadInput>>? upsert; + + final _i2.OrdineCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutLeadInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutLeadInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutLeadInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutLeadInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class HistoryCommentUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUpdateWithoutHistoryInput({this.comment}); + + final _i1.PrismaUnion? comment; + + @override + Map toJson() => {'comment': comment}; +} + +class HistoryCommentUncheckedUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedUpdateWithoutHistoryInput({this.comment}); + + final _i1.PrismaUnion? comment; + + @override + Map toJson() => {'comment': comment}; +} + +class HistoryCommentUpsertWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUpsertWithoutHistoryInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentUpdateWithoutHistoryInput, + _i2.HistoryCommentUncheckedUpdateWithoutHistoryInput> update; + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput> create; + + final _i2.HistoryCommentWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class HistoryCommentUpdateToOneWithWhereWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryCommentUpdateToOneWithWhereWithoutHistoryInput({ + this.where, + required this.data, + }); + + final _i2.HistoryCommentWhereInput? where; + + final _i1.PrismaUnion<_i2.HistoryCommentUpdateWithoutHistoryInput, + _i2.HistoryCommentUncheckedUpdateWithoutHistoryInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryCommentUpdateOneWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const HistoryCommentUpdateOneWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryCommentCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.HistoryCommentUpsertWithoutHistoryInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.HistoryCommentWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryCommentUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.HistoryCommentUpdateWithoutHistoryInput, + _i2.HistoryCommentUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class HistoryAttachmentUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpdateWithoutHistoryInput({ + this.url, + this.name, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + @override + Map toJson() => { + 'url': url, + 'name': name, + }; +} + +class HistoryAttachmentUncheckedUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedUpdateWithoutHistoryInput({ + this.url, + this.name, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + @override + Map toJson() => { + 'url': url, + 'name': name, + }; +} + +class HistoryAttachmentUpsertWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpsertWithoutHistoryInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentUpdateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedUpdateWithoutHistoryInput> update; + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput> create; + + final _i2.HistoryAttachmentWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class HistoryAttachmentUpdateToOneWithWhereWithoutHistoryInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpdateToOneWithWhereWithoutHistoryInput({ + this.where, + required this.data, + }); + + final _i2.HistoryAttachmentWhereInput? where; + + final _i1.PrismaUnion<_i2.HistoryAttachmentUpdateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedUpdateWithoutHistoryInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryAttachmentUpdateOneWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpdateOneWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryAttachmentCreateOrConnectWithoutHistoryInput? + connectOrCreate; + + final _i2.HistoryAttachmentUpsertWithoutHistoryInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.HistoryAttachmentWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryAttachmentUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.HistoryAttachmentUpdateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentCreateWithoutHistoryInput, + _i2.HistoryCommentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryCommentCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.HistoryCommentUpsertWithoutHistoryInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.HistoryCommentWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryCommentUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.HistoryCommentUpdateWithoutHistoryInput, + _i2.HistoryCommentUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentCreateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedCreateWithoutHistoryInput>? create; + + final _i2.HistoryAttachmentCreateOrConnectWithoutHistoryInput? + connectOrCreate; + + final _i2.HistoryAttachmentUpsertWithoutHistoryInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.HistoryAttachmentWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryAttachmentUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.HistoryAttachmentUpdateWithoutHistoryInput, + _i2.HistoryAttachmentUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class HistoryUncheckedUpdateWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateWithoutLeadInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.comment, + this.attachment, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + final _i2.HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryUpdateWithWhereUniqueWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithWhereUniqueWithoutLeadInput({ + required this.where, + required this.data, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutLeadInput, + _i2.HistoryUncheckedUpdateWithoutLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryScalarWhereInput + implements _i1.JsonConvertible> { + const HistoryScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? AND; + + final Iterable<_i2.HistoryScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? timestamp; + + final _i1.PrismaUnion<_i2.StringFilter, String>? event; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? leadUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryUpdateManyMutationInput + implements _i1.JsonConvertible> { + const HistoryUpdateManyMutationInput({ + this.uuid, + this.timestamp, + this.event, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + }; +} + +class HistoryUncheckedUpdateManyWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateManyWithoutLeadInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + }; +} + +class HistoryUpdateManyWithWhereWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUpdateManyWithWhereWithoutLeadInput({ + required this.where, + required this.data, + }); + + final _i2.HistoryScalarWhereInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyMutationInput, + _i2.HistoryUncheckedUpdateManyWithoutLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryUpdateManyWithoutLeadNestedInput + implements _i1.JsonConvertible> { + const HistoryUpdateManyWithoutLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutLeadInput, + Iterable<_i2.HistoryUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutLeadInput, + Iterable<_i2.HistoryCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.HistoryUpsertWithWhereUniqueWithoutLeadInput, + Iterable<_i2.HistoryUpsertWithWhereUniqueWithoutLeadInput>>? upsert; + + final _i2.HistoryCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithWhereUniqueWithoutLeadInput, + Iterable<_i2.HistoryUpdateWithWhereUniqueWithoutLeadInput>>? update; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyWithWhereWithoutLeadInput, + Iterable<_i2.HistoryUpdateManyWithWhereWithoutLeadInput>>? updateMany; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUpdateWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutOrdineInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'history': history, + }; +} + +class LeadUncheckedUpdateWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutOrdineInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'history': history, + }; +} + +class LeadUpsertWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadUpsertWithoutOrdineInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutOrdineInput, + _i2.LeadUncheckedUpdateWithoutOrdineInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOrdineInput, + _i2.LeadUncheckedCreateWithoutOrdineInput> create; + + final _i2.LeadWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class LeadUpdateToOneWithWhereWithoutOrdineInput + implements _i1.JsonConvertible> { + const LeadUpdateToOneWithWhereWithoutOrdineInput({ + this.where, + required this.data, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutOrdineInput, + _i2.LeadUncheckedUpdateWithoutOrdineInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUpdateOneWithoutOrdineNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateOneWithoutOrdineNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOrdineInput, + _i2.LeadUncheckedCreateWithoutOrdineInput>? create; + + final _i2.LeadCreateOrConnectWithoutOrdineInput? connectOrCreate; + + final _i2.LeadUpsertWithoutOrdineInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LeadWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.LeadUpdateToOneWithWhereWithoutOrdineInput, + _i1.PrismaUnion<_i2.LeadUpdateWithoutOrdineInput, + _i2.LeadUncheckedUpdateWithoutOrdineInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class NegozioUpdateWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutOrdineInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + }; +} + +class TipoModuloContrattoUpdateWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpdateWithoutModuloContrattoInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoUncheckedUpdateWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUncheckedUpdateWithoutModuloContrattoInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoUpsertWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpsertWithoutModuloContrattoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoUpdateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedUpdateWithoutModuloContrattoInput> update; + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoCreateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput> create; + + final _i2.TipoModuloContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class TipoModuloContrattoUpdateToOneWithWhereWithoutModuloContrattoInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpdateToOneWithWhereWithoutModuloContrattoInput({ + this.where, + required this.data, + }); + + final _i2.TipoModuloContrattoWhereInput? where; + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoUpdateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedUpdateWithoutModuloContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.TipoModuloContrattoCreateWithoutModuloContrattoInput, + _i2.TipoModuloContrattoUncheckedCreateWithoutModuloContrattoInput>? + create; + + final _i2.TipoModuloContrattoCreateOrConnectWithoutModuloContrattoInput? + connectOrCreate; + + final _i2.TipoModuloContrattoUpsertWithoutModuloContrattoInput? upsert; + + final _i2.TipoModuloContrattoWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .TipoModuloContrattoUpdateToOneWithWhereWithoutModuloContrattoInput, + _i1.PrismaUnion< + _i2.TipoModuloContrattoUpdateWithoutModuloContrattoInput, + _i2 + .TipoModuloContrattoUncheckedUpdateWithoutModuloContrattoInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ModuloContrattoUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithoutContrattiInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.serviziEwoCollegabili, + this.fornitore, + this.tipoModulo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ServizioEwoUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput? + fornitore; + + final _i2 + .TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput? + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class PraticaUncheckedUpdateWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutTipoPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutTipoPraticaInput, + _i2.PraticaUncheckedUpdateWithoutTipoPraticaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaScalarWhereInput + implements _i1.JsonConvertible> { + const PraticaScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? AND; + + final Iterable<_i2.PraticaScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInserimento; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoPraticaId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? statoPraticaId; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyMutationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUncheckedUpdateManyWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutTipoPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyWithWhereWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithWhereWithoutTipoPraticaInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyMutationInput, + _i2.PraticaUncheckedUpdateManyWithoutTipoPraticaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutTipoPraticaNestedInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutTipoPraticaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutTipoPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutTipoPraticaInput>, + _i1.PrismaUnion< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput, + Iterable< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput, + Iterable<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput>>? + upsert; + + final _i2.PraticaCreateManyTipoPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput>>? + update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutTipoPraticaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoPraticaUncheckedUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUncheckedUpdateManyWithoutTipoPraticaNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.TipoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.TipoPraticaUpdateWithoutServiziEwoInput, + _i2.TipoPraticaUncheckedUpdateWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class TipoPraticaScalarWhereInput + implements _i1.JsonConvertible> { + const TipoPraticaScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereInput, + Iterable<_i2.TipoPraticaScalarWhereInput>>? AND; + + final Iterable<_i2.TipoPraticaScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereInput, + Iterable<_i2.TipoPraticaScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaUncheckedUpdateManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateManyWithoutServiziEwoInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.TipoPraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.TipoPraticaUpdateManyMutationInput, + _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.TipoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.TipoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput>>? + update; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereInput, + Iterable<_i2.TipoPraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornituraUncheckedUpdateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateWithoutServizioEwoInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i2.FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUpdateWithWhereUniqueWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithWhereUniqueWithoutServizioEwoInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutServizioEwoInput, + _i2.FornituraUncheckedUpdateWithoutServizioEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraUncheckedUpdateManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateManyWithoutServizioEwoInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + }; +} + +class FornituraUpdateManyWithWhereWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUpdateManyWithWhereWithoutServizioEwoInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyMutationInput, + _i2.FornituraUncheckedUpdateManyWithoutServizioEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.FornituraCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.FornituraUpsertWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.FornituraUpsertWithWhereUniqueWithoutServizioEwoInput>>? + upsert; + + final _i2.FornituraCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.FornituraUpdateWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.FornituraUpdateWithWhereUniqueWithoutServizioEwoInput>>? + update; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyWithWhereWithoutServizioEwoInput, + Iterable<_i2.FornituraUpdateManyWithWhereWithoutServizioEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutStatoInput, + _i2.PraticaUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyMutationInput, + _i2.PraticaUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutStatoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutStatoInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutStatoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.PraticaCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutStatoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoPraticaUncheckedUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUncheckedUpdateManyWithoutStatoNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.StatoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoPraticaUpdateWithoutServiziEwoInput, + _i2.StatoPraticaUncheckedUpdateWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoPraticaScalarWhereInput + implements _i1.JsonConvertible> { + const StatoPraticaScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereInput, + Iterable<_i2.StatoPraticaScalarWhereInput>>? AND; + + final Iterable<_i2.StatoPraticaScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereInput, + Iterable<_i2.StatoPraticaScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaUncheckedUpdateManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateManyWithoutServiziEwoInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.StatoPraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.StatoPraticaUpdateManyMutationInput, + _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.StatoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput>>? upsert; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput>>? update; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereInput, + Iterable<_i2.StatoPraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutStatoInput, + _i2.ContrattoUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutStatoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.ContrattoCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutStatoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelLuceUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutStatoInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelLuceScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateManyMutationInput, + _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.ContrattoEnelLuceCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelGasUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutStatoInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelGasScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateManyMutationInput, + _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelFibraUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutStatoInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateManyMutationInput, + _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateWithoutStatoInput({ + this.uuid, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneUpdateWithoutStatoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoInput({ + this.uuid, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneUpdateManyMutationInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUncheckedUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.contratti, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutServiziEwoInput, + _i2.StatoContrattoUncheckedUpdateWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoScalarWhereInput + implements _i1.JsonConvertible> { + const StatoContrattoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereInput, + Iterable<_i2.StatoContrattoScalarWhereInput>>? AND; + + final Iterable<_i2.StatoContrattoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereInput, + Iterable<_i2.StatoContrattoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoUncheckedUpdateManyWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateManyWithoutServiziEwoInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput({ + required this.where, + required this.data, + }); + + final _i2.StatoContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateManyMutationInput, + _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoContrattoCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2 + .StatoContrattoUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput>>? + update; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereInput, + Iterable<_i2.StatoContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput, + Iterable<_i2.ContrattoEnelGasUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelFibraUncheckedUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutOffertaInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelFibraScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateManyMutationInput, + _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithoutOffertaInput({ + this.uuid, + this.stato, + this.contratto, + this.domicilio, + }); + + final _i1.PrismaUnion? uuid; + + final _i2 + .StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + stato; + + final _i2 + .ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + contratto; + + final _i2 + .DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutOffertaInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutOffertaInput> update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutOffertaInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutOffertaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoEnelXAssicurazioneScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneUpdateManyMutationInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyOffertaInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUncheckedUpdateWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutInclusaInOfferteInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + }; +} + +class OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutInclusaInOfferteInput, + _i2.OffertaUncheckedUpdateWithoutInclusaInOfferteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaScalarWhereInput + implements _i1.JsonConvertible> { + const OffertaScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? AND; + + final Iterable<_i2.OffertaScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataFineOfferta; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? dataInizioOfferta; + + final _i1.PrismaUnion<_i2.StringFilter, String>? servizioEwoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyMutationInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + }; +} + +class OffertaUncheckedUpdateManyWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutInclusaInOfferteInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateManyMutationInput, + _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateManyWithoutInclusaInOfferteNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithoutInclusaInOfferteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutInclusaInOfferteInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutInclusaInOfferteInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput, + Iterable< + _i2 + .OffertaUncheckedCreateWithoutInclusaInOfferteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput, + Iterable< + _i2.OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput>>? + upsert; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput, + Iterable< + _i2.OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput>>? + update; + + final _i1.PrismaUnion< + _i2.OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUpdateWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutInclusaInOfferteInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + }; +} + +class OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutInclusaInOfferteInput, + _i2.OffertaUncheckedUpdateWithoutInclusaInOfferteInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutInclusaInOfferteInput, + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutInclusaInOfferteInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutInclusaInOfferteInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutInclusaInOfferteInput, + Iterable< + _i2 + .OffertaUncheckedCreateWithoutInclusaInOfferteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaCreateOrConnectWithoutInclusaInOfferteInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput, + Iterable< + _i2.OffertaUpsertWithWhereUniqueWithoutInclusaInOfferteInput>>? + upsert; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput, + Iterable< + _i2.OffertaUpdateWithWhereUniqueWithoutInclusaInOfferteInput>>? + update; + + final _i1.PrismaUnion< + _i2.OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutInclusaInOfferteInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUncheckedUpdateWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutOfferteIncluseInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutOfferteIncluseInput, + _i2.OffertaUncheckedUpdateWithoutOfferteIncluseInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUncheckedUpdateManyWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutOfferteIncluseInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaUpdateManyWithWhereWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithWhereWithoutOfferteIncluseInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateManyMutationInput, + _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateManyWithoutOfferteIncluseNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithoutOfferteIncluseNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutOfferteIncluseInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutOfferteIncluseInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput, + Iterable<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput>>? + upsert; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput>>? + update; + + final _i1.PrismaUnion< + _i2.OffertaUpdateManyWithWhereWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutOfferteIncluseInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUpdateWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutOfferteIncluseInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutOfferteIncluseInput, + _i2.OffertaUncheckedUpdateWithoutOfferteIncluseInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutOfferteIncluseInput, + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutOfferteIncluseInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutOfferteIncluseInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutOfferteIncluseInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput, + Iterable<_i2.OffertaCreateOrConnectWithoutOfferteIncluseInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpsertWithWhereUniqueWithoutOfferteIncluseInput>>? + upsert; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpdateWithWhereUniqueWithoutOfferteIncluseInput>>? + update; + + final _i1.PrismaUnion< + _i2.OffertaUpdateManyWithWhereWithoutOfferteIncluseInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutOfferteIncluseInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUncheckedUpdateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutServizioEwoInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpdateWithWhereUniqueWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithWhereUniqueWithoutServizioEwoInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutServizioEwoInput, + _i2.OffertaUncheckedUpdateWithoutServizioEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUncheckedUpdateManyWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutServizioEwoInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + }; +} + +class OffertaUpdateManyWithWhereWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithWhereWithoutServizioEwoInput({ + required this.where, + required this.data, + }); + + final _i2.OffertaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateManyMutationInput, + _i2.OffertaUncheckedUpdateManyWithoutServizioEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput>>>>? create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.OffertaCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaUpsertWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.OffertaUpsertWithWhereUniqueWithoutServizioEwoInput>>? + upsert; + + final _i2.OffertaCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.OffertaUpdateWithWhereUniqueWithoutServizioEwoInput>>? + update; + + final _i1.PrismaUnion<_i2.OffertaUpdateManyWithWhereWithoutServizioEwoInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutServizioEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUncheckedUpdateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutModuliContrattoInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + }; +} + +class ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutModuliContrattoInput, + _i2.ServizioEwoUncheckedUpdateWithoutModuliContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoScalarWhereInput + implements _i1.JsonConvertible> { + const ServizioEwoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? AND; + + final Iterable<_i2.ServizioEwoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoServizioEwoFilter, _i3.TipoServizioEwo>? + tipoServizioEwo; + + final _i1.PrismaUnion<_i2.StringFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringFilter, String>? icona; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyMutationInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutModuliContrattoInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyMutationInput, + _i2.ServizioEwoUncheckedUpdateManyWithoutModuliContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutModuliContrattoInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutModuliContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ModuloContrattoUncheckedUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateWithoutContrattiInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + }; +} + +class ModuloContrattoUpsertWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpsertWithoutContrattiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedUpdateWithoutContrattiInput> update; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedCreateWithoutContrattiInput> create; + + final _i2.ModuloContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ModuloContrattoUpdateToOneWithWhereWithoutContrattiInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateToOneWithWhereWithoutContrattiInput({ + this.where, + required this.data, + }); + + final _i2.ModuloContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedUpdateWithoutContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUpdateOneWithoutContrattiNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateOneWithoutContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.ModuloContrattoCreateOrConnectWithoutContrattiInput? + connectOrCreate; + + final _i2.ModuloContrattoUpsertWithoutContrattiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ModuloContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateToOneWithWhereWithoutContrattiInput, + _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutContrattiInput, + _i2.ModuloContrattoUncheckedUpdateWithoutContrattiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutPraticaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutPraticaInput, + _i2.ContrattoUncheckedUpdateWithoutPraticaInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutPraticaInput, + _i2.ContrattoUncheckedCreateWithoutPraticaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutPraticaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutPraticaInput, + _i2.ContrattoUncheckedUpdateWithoutPraticaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyWithWhereWithoutPraticaInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutPraticaInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutPraticaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutPraticaNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutPraticaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutPraticaInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutPraticaInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutPraticaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutPraticaInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutPraticaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutPraticaInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutPraticaInput>>? upsert; + + final _i2.ContrattoCreateManyPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutPraticaInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutPraticaInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutPraticaInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutPraticaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutNegozioInput, + _i2.PraticaUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyMutationInput, + _i2.PraticaUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutNegozioInput, + Iterable<_i2.PraticaUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutNegozioInput, + Iterable<_i2.PraticaCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.PraticaCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutUtenteInput, + _i2.ContrattoUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutUtenteInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutUtenteInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutUtenteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.ContrattoCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutUtenteInput, + _i2.PraticaUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyMutationInput, + _i2.PraticaUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutUtenteInput, + Iterable<_i2.PraticaUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutUtenteInput, + Iterable<_i2.PraticaCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.PraticaCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class IngressiUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithoutUtenteInput, + _i2.IngressiUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IngressiScalarWhereInput + implements _i1.JsonConvertible> { + const IngressiScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? AND; + + final Iterable<_i2.IngressiScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeFilter, DateTime>? data; + + final _i1.PrismaUnion<_i2.IntFilter, int>? clienti; + + final _i1.PrismaUnion<_i2.IntFilter, int>? nonClienti; + + final _i1.PrismaUnion<_i2.StringFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? negozioCodice; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiUpdateManyMutationInput + implements _i1.JsonConvertible> { + const IngressiUpdateManyMutationInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + }; +} + +class IngressiUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.IngressiScalarWhereInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyMutationInput, + _i2.IngressiUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IngressiUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutUtenteInput, + Iterable<_i2.IngressiUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutUtenteInput, + Iterable<_i2.IngressiCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.IngressiUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.IngressiUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.IngressiCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.IngressiUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.IngressiUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutUtenteInput, + _i2.LeadUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadScalarWhereInput + implements _i1.JsonConvertible> { + const LeadScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? AND; + + final Iterable<_i2.LeadScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? opportunitaUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? agenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? appuntamenti; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataScadenza; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? nota; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyMutationInput + implements _i1.JsonConvertible> { + const LeadUpdateManyMutationInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutUtenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutUtenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.LeadCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUncheckedUpdateWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutAgenteInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpdateWithWhereUniqueWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutAgenteInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutAgenteInput, + _i2.LeadUncheckedUpdateWithoutAgenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutAgenteInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutAgenteInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutAgenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutAgenteNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutAgenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutAgenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutAgenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutAgenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutAgenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutAgenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutAgenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutAgenteInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutAgenteInput>>? upsert; + + final _i2.LeadCreateManyAgenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutAgenteInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutAgenteInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutAgenteInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutAgenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutHistoryInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + }; +} + +class LeadUncheckedUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutHistoryInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + }; +} + +class LeadUpsertWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadUpsertWithoutHistoryInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutHistoryInput, + _i2.LeadUncheckedUpdateWithoutHistoryInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutHistoryInput, + _i2.LeadUncheckedCreateWithoutHistoryInput> create; + + final _i2.LeadWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class LeadUpdateToOneWithWhereWithoutHistoryInput + implements _i1.JsonConvertible> { + const LeadUpdateToOneWithWhereWithoutHistoryInput({ + this.where, + required this.data, + }); + + final _i2.LeadWhereInput? where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutHistoryInput, + _i2.LeadUncheckedUpdateWithoutHistoryInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUpdateOneWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateOneWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.LeadCreateWithoutHistoryInput, + _i2.LeadUncheckedCreateWithoutHistoryInput>? create; + + final _i2.LeadCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.LeadUpsertWithoutHistoryInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LeadWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.LeadUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.LeadUpdateWithoutHistoryInput, + _i2.LeadUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class HistoryUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithoutUtenteInput({ + this.uuid, + this.timestamp, + this.event, + this.comment, + this.attachment, + this.lead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i2.HistoryCommentUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUpdateOneWithoutHistoryNestedInput? attachment; + + final _i2.LeadUpdateOneWithoutHistoryNestedInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Lead': lead, + }; +} + +class HistoryUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.timestamp, + this.event, + this.leadUuid, + this.comment, + this.attachment, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i2.HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutUtenteInput, + _i2.HistoryUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutUtenteInput, + _i2.HistoryUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class HistoryUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutUtenteInput, + _i2.HistoryUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.timestamp, + this.event, + this.leadUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'leadUuid': leadUuid, + }; +} + +class HistoryUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const HistoryUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.HistoryScalarWhereInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyMutationInput, + _i2.HistoryUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const HistoryUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutUtenteInput, + Iterable<_i2.HistoryUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutUtenteInput, + Iterable<_i2.HistoryCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.HistoryUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.HistoryUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.HistoryCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.HistoryUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.HistoryUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutOpportunitaAssegnateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'ordini': ordini, + 'history': history, + }; +} + +class OrdineUncheckedUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutUtenteInput, + _i2.OrdineUncheckedUpdateWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutUtenteInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutUtenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutUtenteInput, + Iterable<_i2.OrdineUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutUtenteInput, + Iterable<_i2.OrdineCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.OrdineCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class HistoryUncheckedUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutUtenteInput, + Iterable<_i2.HistoryUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutUtenteInput, + Iterable<_i2.HistoryCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.HistoryUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.HistoryUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.HistoryCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.HistoryUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.HistoryUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUncheckedUpdateWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutOpportunitaAssegnateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOpportunitaAssegnateInput, + _i2.UtenteUncheckedUpdateWithoutOpportunitaAssegnateInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOpportunitaAssegnateInput, + _i2.UtenteUncheckedUpdateWithoutOpportunitaAssegnateInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteScalarWhereInput + implements _i1.JsonConvertible> { + const UtenteScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? AND; + + final Iterable<_i2.UtenteScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? firebaseUid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? email; + + final _i1.PrismaUnion<_i2.EnumRuoloUtenteFilter, _i3.RuoloUtente>? ruolo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? photoUrl; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nomeVisualizzato; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUpdateManyMutationInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyMutationInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteScalarWhereInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateManyMutationInput, + _i2.UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateNestedInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaAssegnateInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaAssegnateInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput>>? + upsert; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput>>? + update; + + final _i1.PrismaUnion< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OpportunitaUncheckedUpdateWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateWithoutGestoriLeadInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUncheckedUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateNestedInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'agenti': agenti, + }; +} + +class OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput({ + required this.where, + required this.data, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutGestoriLeadInput, + _i2.OpportunitaUncheckedUpdateWithoutGestoriLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OpportunitaScalarWhereInput + implements _i1.JsonConvertible> { + const OpportunitaScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? AND; + + final Iterable<_i2.OpportunitaScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataInizio; + + final _i1.PrismaUnion<_i2.DateTimeNullableFilter, + _i1.PrismaUnion>? dataFine; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? form; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateManyMutationInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaUncheckedUpdateManyWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateManyWithoutGestoriLeadInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput({ + required this.where, + required this.data, + }); + + final _i2.OpportunitaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateManyMutationInput, + _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutGestoriLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutGestoriLeadInput>, + _i1.PrismaUnion< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput>>? upsert; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput>>? update; + + final _i1.PrismaUnion< + _i2.OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OpportunitaUpdateWithWhereUniqueWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateWithWhereUniqueWithoutAgentiInput({ + required this.where, + required this.data, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutAgentiInput, + _i2.OpportunitaUncheckedUpdateWithoutAgentiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OpportunitaUncheckedUpdateManyWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateManyWithoutAgentiInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaUpdateManyWithWhereWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateManyWithWhereWithoutAgentiInput({ + required this.where, + required this.data, + }); + + final _i2.OpportunitaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateManyMutationInput, + _i2.OpportunitaUncheckedUpdateManyWithoutAgentiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutAgentiInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutAgentiInput>, + _i1.PrismaUnion<_i2.OpportunitaUncheckedCreateWithoutAgentiInput, + Iterable<_i2.OpportunitaUncheckedCreateWithoutAgentiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutAgentiInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutAgentiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaUpsertWithWhereUniqueWithoutAgentiInput, + Iterable<_i2.OpportunitaUpsertWithWhereUniqueWithoutAgentiInput>>? upsert; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithWhereUniqueWithoutAgentiInput, + Iterable<_i2.OpportunitaUpdateWithWhereUniqueWithoutAgentiInput>>? update; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateManyWithWhereWithoutAgentiInput, + Iterable<_i2.OpportunitaUpdateManyWithWhereWithoutAgentiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutNegozioInput, + _i2.UtenteUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteScalarWhereInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateManyMutationInput, + _i2.UtenteUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.UtenteUncheckedCreateWithoutNegozioInput, + Iterable<_i2.UtenteUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutNegozioInput, + Iterable<_i2.UtenteCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.UtenteUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.UtenteCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.UtenteUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.UtenteUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.UtenteUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutNegozioInput, + _i2.ContrattoUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutNegozioInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutNegozioInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.ContrattoCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutNegozioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutSoggettoInput, + _i2.PraticaUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.PraticaScalarWhereInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyMutationInput, + _i2.PraticaUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class PraticaUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.PraticaCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutSoggettoInput, + _i2.ContrattoUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.ContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyMutationInput, + _i2.ContrattoUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.ContrattoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class IndirizzoEmailUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentanteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.IndirizzoEmailWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutSoggettoInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IndirizzoEmailScalarWhereInput + implements _i1.JsonConvertible> { + const IndirizzoEmailScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereInput, + Iterable<_i2.IndirizzoEmailScalarWhereInput>>? AND; + + final Iterable<_i2.IndirizzoEmailScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereInput, + Iterable<_i2.IndirizzoEmailScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? legaleRappresentanteUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? referenteUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUpdateManyMutationInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateManyMutationInput({ + this.uuid, + this.indirizzo, + this.etichetta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + }; +} + +class IndirizzoEmailUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentanteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.IndirizzoEmailScalarWhereInput where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailUpdateManyMutationInput, + _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.IndirizzoEmailCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.IndirizzoEmailCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereInput, + Iterable<_i2.IndirizzoEmailScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NumeroTelefonoUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.numero, + this.etichetta, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentateUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.NumeroTelefonoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutSoggettoInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NumeroTelefonoScalarWhereInput + implements _i1.JsonConvertible> { + const NumeroTelefonoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereInput, + Iterable<_i2.NumeroTelefonoScalarWhereInput>>? AND; + + final Iterable<_i2.NumeroTelefonoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereInput, + Iterable<_i2.NumeroTelefonoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? numero; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? legaleRappresentateUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? referenteUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateManyMutationInput({ + this.uuid, + this.numero, + this.etichetta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + }; +} + +class NumeroTelefonoUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.numero, + this.etichetta, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentateUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.NumeroTelefonoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateManyMutationInput, + _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.NumeroTelefonoCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.NumeroTelefonoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereInput, + Iterable<_i2.NumeroTelefonoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OrdineUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutSoggettoInput, + _i2.OrdineUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.OrdineUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.OrdineCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.OrdineCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.opportunitaUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutSoggettoInput, + _i2.LeadUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.opportunitaUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.LeadUncheckedCreateWithoutSoggettoInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.LeadCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.LeadCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.PrivacyCreateWithoutSoggettoInput, + _i2.PrivacyUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.PrivacyCreateOrConnectWithoutSoggettoInput? connectOrCreate; + + final _i2.PrivacyUpsertWithoutSoggettoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.PrivacyWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.PrivacyUpdateToOneWithWhereWithoutSoggettoInput, + _i1.PrismaUnion<_i2.PrivacyUpdateWithoutSoggettoInput, + _i2.PrivacyUncheckedUpdateWithoutSoggettoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoUncheckedUpdateWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutNegozioPreferitoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput({ + required this.where, + required this.data, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutNegozioPreferitoInput, + _i2.SoggettoUncheckedUpdateWithoutNegozioPreferitoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoScalarWhereInput + implements _i1.JsonConvertible> { + const SoggettoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereInput, + Iterable<_i2.SoggettoScalarWhereInput>>? AND; + + final Iterable<_i2.SoggettoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereInput, + Iterable<_i2.SoggettoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? ragioneSociale; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? iban; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? tipo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? codiceFiscale; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? note; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const SoggettoUpdateManyMutationInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoUncheckedUpdateManyWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateManyWithoutNegozioPreferitoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput({ + required this.where, + required this.data, + }); + + final _i2.SoggettoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateManyMutationInput, + _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i1.PrismaUnion< + Iterable<_i2.SoggettoCreateWithoutNegozioPreferitoInput>, + _i1.PrismaUnion< + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput, + Iterable< + _i2 + .SoggettoUncheckedCreateWithoutNegozioPreferitoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput, + Iterable<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput>>? + upsert; + + final _i2.SoggettoCreateManyNegozioPreferitoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput>>? + update; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereInput, + Iterable<_i2.SoggettoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class IngressiUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + }; +} + +class IngressiUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithoutNegozioInput, + _i2.IngressiUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IngressiUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + }; +} + +class IngressiUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.IngressiScalarWhereInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyMutationInput, + _i2.IngressiUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class IngressiUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutNegozioInput, + Iterable<_i2.IngressiUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutNegozioInput, + Iterable<_i2.IngressiCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.IngressiUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.IngressiUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.IngressiCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.IngressiUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.IngressiUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutNegozioInput, + _i2.LeadUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutNegozioInput, + Iterable<_i2.LeadUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutNegozioInput, + Iterable<_i2.LeadCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.LeadCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUncheckedUpdateWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutOrdineInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + }; +} + +class NegozioUpsertWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutOrdineInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutOrdineInput, + _i2.NegozioUncheckedUpdateWithoutOrdineInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutOrdineInput, + _i2.NegozioUncheckedCreateWithoutOrdineInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutOrdineInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutOrdineInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutOrdineInput, + _i2.NegozioUncheckedUpdateWithoutOrdineInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutOrdineNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutOrdineNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutOrdineInput, + _i2.NegozioUncheckedCreateWithoutOrdineInput>? create; + + final _i2.NegozioCreateOrConnectWithoutOrdineInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutOrdineInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutOrdineInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutOrdineInput, + _i2.NegozioUncheckedUpdateWithoutOrdineInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class OrdineUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'negozio': negozio, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutUtenteInput, + _i2.OrdineUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutUtenteInput, + _i2.OrdineUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutUtenteInput, + Iterable<_i2.OrdineUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutUtenteInput, + Iterable<_i2.OrdineCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.OrdineCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutHistoryInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + }; +} + +class UtenteUncheckedUpdateWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutHistoryInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + }; +} + +class UtenteUpsertWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutHistoryInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutHistoryInput, + _i2.UtenteUncheckedUpdateWithoutHistoryInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutHistoryInput, + _i2.UtenteUncheckedCreateWithoutHistoryInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutHistoryInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutHistoryInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutHistoryInput, + _i2.UtenteUncheckedUpdateWithoutHistoryInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneRequiredWithoutHistoryNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneRequiredWithoutHistoryNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutHistoryInput, + _i2.UtenteUncheckedCreateWithoutHistoryInput>? create; + + final _i2.UtenteCreateOrConnectWithoutHistoryInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutHistoryInput? upsert; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutHistoryInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutHistoryInput, + _i2.UtenteUncheckedUpdateWithoutHistoryInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class HistoryUpdateWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithoutLeadInput({ + this.uuid, + this.timestamp, + this.event, + this.comment, + this.attachment, + this.utente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i2.HistoryCommentUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUpdateOneWithoutHistoryNestedInput? attachment; + + final _i2.UtenteUpdateOneRequiredWithoutHistoryNestedInput? utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + }; +} + +class HistoryUpsertWithWhereUniqueWithoutLeadInput + implements _i1.JsonConvertible> { + const HistoryUpsertWithWhereUniqueWithoutLeadInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutLeadInput, + _i2.HistoryUncheckedUpdateWithoutLeadInput> update; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutLeadInput, + _i2.HistoryUncheckedCreateWithoutLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class HistoryUncheckedUpdateManyWithoutLeadNestedInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateManyWithoutLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.HistoryCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.HistoryCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.HistoryUncheckedCreateWithoutLeadInput, + Iterable<_i2.HistoryUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.HistoryCreateOrConnectWithoutLeadInput, + Iterable<_i2.HistoryCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.HistoryUpsertWithWhereUniqueWithoutLeadInput, + Iterable<_i2.HistoryUpsertWithWhereUniqueWithoutLeadInput>>? upsert; + + final _i2.HistoryCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.HistoryWhereUniqueInput, + Iterable<_i2.HistoryWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithWhereUniqueWithoutLeadInput, + Iterable<_i2.HistoryUpdateWithWhereUniqueWithoutLeadInput>>? update; + + final _i1.PrismaUnion<_i2.HistoryUpdateManyWithWhereWithoutLeadInput, + Iterable<_i2.HistoryUpdateManyWithWhereWithoutLeadInput>>? updateMany; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereInput, + Iterable<_i2.HistoryScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUncheckedUpdateWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutOpportunitaInput({ + this.uuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpdateWithWhereUniqueWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutOpportunitaInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutOpportunitaInput, + _i2.LeadUncheckedUpdateWithoutOpportunitaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutOpportunitaInput({ + this.uuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutOpportunitaInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutOpportunitaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutOpportunitaNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutOpportunitaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutOpportunitaInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutOpportunitaInput, + Iterable<_i2.LeadUncheckedCreateWithoutOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutOpportunitaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutOpportunitaInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutOpportunitaInput>>? upsert; + + final _i2.LeadCreateManyOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutOpportunitaInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutOpportunitaInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutOpportunitaInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutOpportunitaInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUncheckedUpdateWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutOpportunitaGestiteInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOpportunitaGestiteInput, + _i2.UtenteUncheckedUpdateWithoutOpportunitaGestiteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUncheckedUpdateManyWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutOpportunitaGestiteInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput({ + required this.where, + required this.data, + }); + + final _i2.UtenteScalarWhereInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateManyMutationInput, + _i2.UtenteUncheckedUpdateManyWithoutOpportunitaGestiteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUncheckedUpdateManyWithoutOpportunitaGestiteNestedInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyWithoutOpportunitaGestiteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaGestiteInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaGestiteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput>>? + upsert; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput>>? + update; + + final _i1.PrismaUnion< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OpportunitaUncheckedUpdateWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateWithoutAgentiInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUncheckedUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaGestiteNestedInput? + gestoriLead; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + }; +} + +class OpportunitaUpsertWithWhereUniqueWithoutAgentiInput + implements _i1.JsonConvertible> { + const OpportunitaUpsertWithWhereUniqueWithoutAgentiInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutAgentiInput, + _i2.OpportunitaUncheckedUpdateWithoutAgentiInput> update; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutAgentiInput, + _i2.OpportunitaUncheckedCreateWithoutAgentiInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OpportunitaUpdateManyWithoutAgentiNestedInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateManyWithoutAgentiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutAgentiInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutAgentiInput>, + _i1.PrismaUnion<_i2.OpportunitaUncheckedCreateWithoutAgentiInput, + Iterable<_i2.OpportunitaUncheckedCreateWithoutAgentiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutAgentiInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutAgentiInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OpportunitaUpsertWithWhereUniqueWithoutAgentiInput, + Iterable<_i2.OpportunitaUpsertWithWhereUniqueWithoutAgentiInput>>? upsert; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithWhereUniqueWithoutAgentiInput, + Iterable<_i2.OpportunitaUpdateWithWhereUniqueWithoutAgentiInput>>? update; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateManyWithWhereWithoutAgentiInput, + Iterable<_i2.OpportunitaUpdateManyWithWhereWithoutAgentiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutOrdiniInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutOrdiniInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'history': history, + }; +} + +class UtenteUpsertWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutOrdiniInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOrdiniInput, + _i2.UtenteUncheckedUpdateWithoutOrdiniInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOrdiniInput, + _i2.UtenteUncheckedCreateWithoutOrdiniInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutOrdiniInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutOrdiniInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOrdiniInput, + _i2.UtenteUncheckedUpdateWithoutOrdiniInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneRequiredWithoutOrdiniNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneRequiredWithoutOrdiniNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOrdiniInput, + _i2.UtenteUncheckedCreateWithoutOrdiniInput>? create; + + final _i2.UtenteCreateOrConnectWithoutOrdiniInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutOrdiniInput? upsert; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutOrdiniInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutOrdiniInput, + _i2.UtenteUncheckedUpdateWithoutOrdiniInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OrdineUpdateWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutLeadInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutLeadInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutLeadInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutLeadInput, + _i2.OrdineUncheckedUpdateWithoutLeadInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutLeadInput, + _i2.OrdineUncheckedCreateWithoutLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateManyWithoutLeadNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutLeadInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutLeadInput, + Iterable<_i2.OrdineUncheckedCreateWithoutLeadInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutLeadInput, + Iterable<_i2.OrdineCreateOrConnectWithoutLeadInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutLeadInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutLeadInput>>? upsert; + + final _i2.OrdineCreateManyLeadInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutLeadInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutLeadInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutLeadInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutLeadInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class LeadUpdateWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutOpportunitaInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutOpportunitaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutOpportunitaInput, + _i2.LeadUncheckedUpdateWithoutOpportunitaInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutOpportunitaInput, + _i2.LeadUncheckedCreateWithoutOpportunitaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateManyWithoutOpportunitaNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutOpportunitaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutOpportunitaInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutOpportunitaInput, + Iterable<_i2.LeadUncheckedCreateWithoutOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutOpportunitaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutOpportunitaInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutOpportunitaInput>>? upsert; + + final _i2.LeadCreateManyOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutOpportunitaInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutOpportunitaInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutOpportunitaInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutOpportunitaInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateManyWithoutOpportunitaAssegnateNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithoutOpportunitaAssegnateNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaAssegnateInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaAssegnateInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaAssegnateInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaAssegnateInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaAssegnateInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaAssegnateInput>>? + upsert; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaAssegnateInput>>? + update; + + final _i1.PrismaUnion< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput, + Iterable< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaAssegnateInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OpportunitaUpdateWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateWithoutGestoriLeadInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUpdateManyWithoutOpportunitaAssegnateNestedInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'agenti': agenti, + }; +} + +class OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput + implements _i1.JsonConvertible> { + const OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OpportunitaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutGestoriLeadInput, + _i2.OpportunitaUncheckedUpdateWithoutGestoriLeadInput> update; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutGestoriLeadInput, + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OpportunitaUpdateManyWithoutGestoriLeadNestedInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateManyWithoutGestoriLeadNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OpportunitaCreateWithoutGestoriLeadInput, + _i1.PrismaUnion< + Iterable<_i2.OpportunitaCreateWithoutGestoriLeadInput>, + _i1.PrismaUnion< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUncheckedCreateWithoutGestoriLeadInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaCreateOrConnectWithoutGestoriLeadInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUpsertWithWhereUniqueWithoutGestoriLeadInput>>? upsert; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OpportunitaWhereUniqueInput, + Iterable<_i2.OpportunitaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput, + Iterable< + _i2.OpportunitaUpdateWithWhereUniqueWithoutGestoriLeadInput>>? update; + + final _i1.PrismaUnion< + _i2.OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput, + Iterable<_i2.OpportunitaUpdateManyWithWhereWithoutGestoriLeadInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereInput, + Iterable<_i2.OpportunitaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutLeadsAssegnatiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutLeadsAssegnatiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutLeadsAssegnatiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsAssegnatiInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedCreateWithoutLeadsAssegnatiInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutLeadsAssegnatiInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutLeadsAssegnatiInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsAssegnatiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneWithoutLeadsAssegnatiNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneWithoutLeadsAssegnatiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedCreateWithoutLeadsAssegnatiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutLeadsAssegnatiInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutLeadsAssegnatiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutLeadsAssegnatiInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsAssegnatiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsAssegnatiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LeadUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutUtenteInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutUtenteInput, + _i2.LeadUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutUtenteInput, + _i2.LeadUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutUtenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutUtenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.LeadCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutIngressiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutIngressiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutIngressiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutIngressiInput, + _i2.UtenteUncheckedUpdateWithoutIngressiInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutIngressiInput, + _i2.UtenteUncheckedCreateWithoutIngressiInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutIngressiInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutIngressiInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutIngressiInput, + _i2.UtenteUncheckedUpdateWithoutIngressiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneRequiredWithoutIngressiNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneRequiredWithoutIngressiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutIngressiInput, + _i2.UtenteUncheckedCreateWithoutIngressiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutIngressiInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutIngressiInput? upsert; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutIngressiInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutIngressiInput, + _i2.UtenteUncheckedUpdateWithoutIngressiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class IngressiUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUpdateWithoutNegozioInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i2.UtenteUpdateOneRequiredWithoutIngressiNestedInput? utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utente': utente, + }; +} + +class IngressiUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const IngressiUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithoutNegozioInput, + _i2.IngressiUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.IngressiCreateWithoutNegozioInput, + _i2.IngressiUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class IngressiUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const IngressiUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutNegozioInput, + Iterable<_i2.IngressiUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutNegozioInput, + Iterable<_i2.IngressiCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.IngressiUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.IngressiUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.IngressiCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.IngressiUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.IngressiUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OrdineUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + }; +} + +class OrdineUncheckedUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'prodotti': prodotti, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutNegozioInput, + _i2.OrdineUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutNegozioInput, + _i2.OrdineUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutNegozioInput, + _i2.OrdineUncheckedUpdateWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + }; +} + +class OrdineUpdateManyWithWhereWithoutNegozioInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutNegozioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutNegozioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.OrdineCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutLeadsInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'Ordine': ordine, + }; +} + +class OrdineUncheckedUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutNegozioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutNegozioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.OrdineCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUncheckedUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutLeadsInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutLeadsInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutLeadsInput, + _i2.NegozioUncheckedUpdateWithoutLeadsInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutLeadsInput, + _i2.NegozioUncheckedCreateWithoutLeadsInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutLeadsInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutLeadsInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutLeadsInput, + _i2.NegozioUncheckedUpdateWithoutLeadsInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutLeadsNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutLeadsNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutLeadsInput, + _i2.NegozioUncheckedCreateWithoutLeadsInput>? create; + + final _i2.NegozioCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutLeadsInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutLeadsInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutLeadsInput, + _i2.NegozioUncheckedUpdateWithoutLeadsInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LeadUpdateWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutAgenteInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutAgenteInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutAgenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutAgenteInput, + _i2.LeadUncheckedUpdateWithoutAgenteInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutAgenteInput, + _i2.LeadUncheckedCreateWithoutAgenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateManyWithoutAgenteNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutAgenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutAgenteInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutAgenteInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutAgenteInput, + Iterable<_i2.LeadUncheckedCreateWithoutAgenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutAgenteInput, + Iterable<_i2.LeadCreateOrConnectWithoutAgenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutAgenteInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutAgenteInput>>? upsert; + + final _i2.LeadCreateManyAgenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutAgenteInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutAgenteInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutAgenteInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutAgenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutLeadsGestitiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutLeadsGestitiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutLeadsGestitiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsGestitiInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedCreateWithoutLeadsGestitiInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutLeadsGestitiInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutLeadsGestitiInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsGestitiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneWithoutLeadsGestitiNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneWithoutLeadsGestitiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedCreateWithoutLeadsGestitiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutLeadsGestitiInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutLeadsGestitiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutLeadsGestitiInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutLeadsGestitiInput, + _i2.UtenteUncheckedUpdateWithoutLeadsGestitiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LeadUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutDomicilioInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutDomicilioInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutDomicilioInput, + _i2.LeadUncheckedUpdateWithoutDomicilioInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutDomicilioInput, + _i2.LeadUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutDomicilioInput, + _i2.LeadUncheckedUpdateWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutDomicilioInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutDomicilioInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutDomicilioInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutDomicilioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.LeadUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.LeadCreateOrConnectWithoutDomicilioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutDomicilioInput>>? upsert; + + final _i2.LeadCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutDomicilioInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutDomicilioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'leads': leads, + }; +} + +class LeadUncheckedUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.LeadUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.LeadCreateOrConnectWithoutDomicilioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutDomicilioInput>>? upsert; + + final _i2.LeadCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutDomicilioInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutDomicilioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUncheckedUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'leads': leads, + }; +} + +class DomicilioUpsertWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithoutProdottiOrdinatiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedUpdateWithoutProdottiOrdinatiInput> update; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedCreateWithoutProdottiOrdinatiInput> create; + + final _i2.DomicilioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class DomicilioUpdateToOneWithWhereWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const DomicilioUpdateToOneWithWhereWithoutProdottiOrdinatiInput({ + this.where, + required this.data, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedUpdateWithoutProdottiOrdinatiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedCreateWithoutProdottiOrdinatiInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutProdottiOrdinatiInput? + connectOrCreate; + + final _i2.DomicilioUpsertWithoutProdottiOrdinatiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.DomicilioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.DomicilioUpdateToOneWithWhereWithoutProdottiOrdinatiInput, + _i1.PrismaUnion<_i2.DomicilioUpdateWithoutProdottiOrdinatiInput, + _i2.DomicilioUncheckedUpdateWithoutProdottiOrdinatiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class OrdineUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutProdottiInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutProdottiInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutProdottiInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutProdottiInput, + _i2.OrdineUncheckedUpdateWithoutProdottiInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutProdottiInput, + _i2.OrdineUncheckedCreateWithoutProdottiInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutProdottiInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutProdottiInput, + _i2.OrdineUncheckedUpdateWithoutProdottiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutProdottiInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutProdottiInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutProdottiInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutProdottiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUpdateManyWithoutProdottiNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutProdottiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutProdottiInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutProdottiInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutProdottiInput, + Iterable<_i2.OrdineUncheckedCreateWithoutProdottiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutProdottiInput, + Iterable<_i2.OrdineCreateOrConnectWithoutProdottiInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutProdottiInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutProdottiInput>>? upsert; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutProdottiInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutProdottiInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutProdottiInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutProdottiInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoProdottoUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoUpdateWithoutProdottiInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoUncheckedUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoUncheckedUpdateWithoutProdottiInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoUpsertWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoUpsertWithoutProdottiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoUpdateWithoutProdottiInput, + _i2.TipoProdottoUncheckedUpdateWithoutProdottiInput> update; + + final _i1.PrismaUnion<_i2.TipoProdottoCreateWithoutProdottiInput, + _i2.TipoProdottoUncheckedCreateWithoutProdottiInput> create; + + final _i2.TipoProdottoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class TipoProdottoUpdateToOneWithWhereWithoutProdottiInput + implements _i1.JsonConvertible> { + const TipoProdottoUpdateToOneWithWhereWithoutProdottiInput({ + this.where, + required this.data, + }); + + final _i2.TipoProdottoWhereInput? where; + + final _i1.PrismaUnion<_i2.TipoProdottoUpdateWithoutProdottiInput, + _i2.TipoProdottoUncheckedUpdateWithoutProdottiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput + implements _i1.JsonConvertible> { + const TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoCreateWithoutProdottiInput, + _i2.TipoProdottoUncheckedCreateWithoutProdottiInput>? create; + + final _i2.TipoProdottoCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.TipoProdottoUpsertWithoutProdottiInput? upsert; + + final _i2.TipoProdottoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.TipoProdottoUpdateToOneWithWhereWithoutProdottiInput, + _i1.PrismaUnion<_i2.TipoProdottoUpdateWithoutProdottiInput, + _i2.TipoProdottoUncheckedUpdateWithoutProdottiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ProdottoUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithoutFornitoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttore, + this.prodottiOrdinati, + this.tipoProdotto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i2.ProduttoreUpdateOneRequiredWithoutProdottiNestedInput? produttore; + + final _i2.OrdineUpdateManyWithoutProdottiNestedInput? prodottiOrdinati; + + final _i2.TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput? + tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'tipoProdotto': tipoProdotto, + }; +} + +class OrdineUncheckedUpdateManyWithoutProdottiNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutProdottiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutProdottiInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutProdottiInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutProdottiInput, + Iterable<_i2.OrdineUncheckedCreateWithoutProdottiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutProdottiInput, + Iterable<_i2.OrdineCreateOrConnectWithoutProdottiInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutProdottiInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutProdottiInput>>? upsert; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutProdottiInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutProdottiInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutProdottiInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutProdottiInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ProdottoUncheckedUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateWithoutFornitoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + final _i2.OrdineUncheckedUpdateManyWithoutProdottiNestedInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUpsertWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUpsertWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutFornitoreInput, + _i2.ProdottoUncheckedUpdateWithoutFornitoreInput> update; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutFornitoreInput, + _i2.ProdottoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ProdottoUpdateWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutFornitoreInput, + _i2.ProdottoUncheckedUpdateWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUncheckedUpdateManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutFornitoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateManyWithWhereWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithWhereWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyMutationInput, + _i2.ProdottoUncheckedUpdateManyWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutFornitoreInput>, + _i1.PrismaUnion<_i2.ProdottoUncheckedCreateWithoutFornitoreInput, + Iterable<_i2.ProdottoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutFornitoreInput>>? upsert; + + final _i2.ProdottoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutFornitoreInput>>? update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutFornitoreInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornitoreUpdateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreUpdateWithoutModuliContrattoInput({ + this.id, + this.nome, + this.serviziEwo, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutFornitoreNestedInput? serviziEwo; + + final _i2.ProdottoUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'prodotti': prodotti, + }; +} + +class ContrattoUncheckedUpdateManyWithoutModuloNestedInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyWithoutModuloNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutModuloInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutModuloInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutModuloInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutModuloInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutModuloInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutModuloInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutModuloInput>>? upsert; + + final _i2.ContrattoCreateManyModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutModuloInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutModuloInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutModuloInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutModuloInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ModuloContrattoUncheckedUpdateWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateWithoutServiziEwoCollegabiliInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.contratti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + final _i2.ContrattoUncheckedUpdateManyWithoutModuloNestedInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'contratti': contratti, + }; +} + +class ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithoutServiziEwoCollegabiliInput, + _i2.ModuloContrattoUncheckedUpdateWithoutServiziEwoCollegabiliInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoScalarWhereInput + implements _i1.JsonConvertible> { + const ModuloContrattoScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? AND; + + final Iterable<_i2.ModuloContrattoScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoSoggettoFilter, _i3.TipoSoggetto>? + clienteTarget; + + final _i1.PrismaUnion<_i2.EnumCanaleFilter, _i3.Canale>? canale; + + final _i1.PrismaUnion<_i2.StringFilter, String>? tipoModuloContrattoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyMutationInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoScalarWhereInput where; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateManyMutationInput, + _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i1.PrismaUnion< + Iterable< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput>, + _i1.PrismaUnion< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUncheckedUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutFornitoreInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutFornitoreInput, + _i2.ServizioEwoUncheckedUpdateWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutFornitoreInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyWithWhereWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithWhereWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyMutationInput, + _i2.ServizioEwoUncheckedUpdateManyWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput>>? + upsert; + + final _i2.ServizioEwoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput>>? + update; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyWithWhereWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ProdottoUncheckedUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutFornitoreInput>, + _i1.PrismaUnion<_i2.ProdottoUncheckedCreateWithoutFornitoreInput, + Iterable<_i2.ProdottoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutFornitoreInput>>? upsert; + + final _i2.ProdottoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutFornitoreInput>>? update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutFornitoreInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornitoreUncheckedUpdateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedUpdateWithoutModuliContrattoInput({ + this.id, + this.nome, + this.serviziEwo, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutFornitoreNestedInput? + serviziEwo; + + final _i2.ProdottoUncheckedUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'prodotti': prodotti, + }; +} + +class FornitoreUpsertWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreUpsertWithoutModuliContrattoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedUpdateWithoutModuliContrattoInput> update; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedCreateWithoutModuliContrattoInput> create; + + final _i2.FornitoreWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornitoreUpdateToOneWithWhereWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const FornitoreUpdateToOneWithWhereWithoutModuliContrattoInput({ + this.where, + required this.data, + }); + + final _i2.FornitoreWhereInput? where; + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedUpdateWithoutModuliContrattoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput + implements _i1.JsonConvertible> { + const FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedCreateWithoutModuliContrattoInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutModuliContrattoInput? + connectOrCreate; + + final _i2.FornitoreUpsertWithoutModuliContrattoInput? upsert; + + final _i2.FornitoreWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornitoreUpdateToOneWithWhereWithoutModuliContrattoInput, + _i1.PrismaUnion<_i2.FornitoreUpdateWithoutModuliContrattoInput, + _i2.FornitoreUncheckedUpdateWithoutModuliContrattoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ModuloContrattoUpdateWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithoutServiziEwoCollegabiliInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.contratti, + this.fornitore, + this.tipoModulo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ContrattoUpdateManyWithoutModuloNestedInput? contratti; + + final _i2.FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput? + fornitore; + + final _i2 + .TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput? + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithoutServiziEwoCollegabiliInput, + _i2.ModuloContrattoUncheckedUpdateWithoutServiziEwoCollegabiliInput> + update; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i2.ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput> + create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput, + _i1.PrismaUnion< + Iterable< + _i2.ModuloContrattoCreateWithoutServiziEwoCollegabiliInput>, + _i1.PrismaUnion< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutServiziEwoCollegabiliInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoCreateOrConnectWithoutServiziEwoCollegabiliInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpsertWithWhereUniqueWithoutServiziEwoCollegabiliInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpdateWithWhereUniqueWithoutServiziEwoCollegabiliInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput, + Iterable< + _i2 + .ModuloContrattoUpdateManyWithWhereWithoutServiziEwoCollegabiliInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutOfferteInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutOfferteInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithoutOfferteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutOfferteInput, + _i2.ServizioEwoUncheckedUpdateWithoutOfferteInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutOfferteInput, + _i2.ServizioEwoUncheckedCreateWithoutOfferteInput> create; + + final _i2.ServizioEwoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ServizioEwoUpdateToOneWithWhereWithoutOfferteInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateToOneWithWhereWithoutOfferteInput({ + this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutOfferteInput, + _i2.ServizioEwoUncheckedUpdateWithoutOfferteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutOfferteInput, + _i2.ServizioEwoUncheckedCreateWithoutOfferteInput>? create; + + final _i2.ServizioEwoCreateOrConnectWithoutOfferteInput? connectOrCreate; + + final _i2.ServizioEwoUpsertWithoutOfferteInput? upsert; + + final _i2.ServizioEwoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateToOneWithWhereWithoutOfferteInput, + _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutOfferteInput, + _i2.ServizioEwoUncheckedUpdateWithoutOfferteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OffertaUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithoutContrattiEnelFibraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelFibraInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelFibraInput> create; + + final _i2.OffertaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class OffertaUpdateToOneWithWhereWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const OffertaUpdateToOneWithWhereWithoutContrattiEnelFibraInput({ + this.where, + required this.data, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelFibraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateOneWithoutContrattiEnelFibraNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateOneWithoutContrattiEnelFibraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.OffertaUpsertWithoutContrattiEnelFibraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.OffertaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateToOneWithWhereWithoutContrattiEnelFibraInput, + _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelFibraInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelFibraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelFibraUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithoutDomicilioInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.stato, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + stato; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelFibraNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutDomicilioInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutDomicilioInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelFibraUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUncheckedUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutSoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUpdateWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutSoggettoInput, + _i2.DomicilioUncheckedUpdateWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioScalarWhereInput + implements _i1.JsonConvertible> { + const DomicilioScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereInput, + Iterable<_i2.DomicilioScalarWhereInput>>? AND; + + final Iterable<_i2.DomicilioScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereInput, + Iterable<_i2.DomicilioScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? numeroCivico; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? citta; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? cap; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? provincia; + + final _i1.PrismaUnion<_i2.StringFilter, String>? soggettoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioUpdateManyMutationInput + implements _i1.JsonConvertible> { + const DomicilioUpdateManyMutationInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + }; +} + +class DomicilioUncheckedUpdateManyWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateManyWithoutSoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + }; +} + +class DomicilioUpdateManyWithWhereWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUpdateManyWithWhereWithoutSoggettoInput({ + required this.where, + required this.data, + }); + + final _i2.DomicilioScalarWhereInput where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateManyMutationInput, + _i2.DomicilioUncheckedUpdateManyWithoutSoggettoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.DomicilioCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.DomicilioUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.DomicilioUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.DomicilioCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.DomicilioCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.DomicilioUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.DomicilioUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.DomicilioCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.DomicilioUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.DomicilioUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.DomicilioUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereInput, + Iterable<_i2.DomicilioScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUncheckedUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutLeadsInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutLeadsInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutLeadsInput, + _i2.SoggettoUncheckedUpdateWithoutLeadsInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutLeadsInput, + _i2.SoggettoUncheckedCreateWithoutLeadsInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutLeadsInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutLeadsInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutLeadsInput, + _i2.SoggettoUncheckedUpdateWithoutLeadsInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneRequiredWithoutLeadsNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneRequiredWithoutLeadsNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutLeadsInput, + _i2.SoggettoUncheckedCreateWithoutLeadsInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutLeadsInput? upsert; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutLeadsInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutLeadsInput, + _i2.SoggettoUncheckedUpdateWithoutLeadsInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class LeadUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutNegozioInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutNegozioInput, + _i2.LeadUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutNegozioInput, + _i2.LeadUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutNegozioInput, + Iterable<_i2.LeadUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutNegozioInput, + Iterable<_i2.LeadCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.LeadCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutIngressiInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutIngressiInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutIngressiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutIngressiInput, + _i2.NegozioUncheckedUpdateWithoutIngressiInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutIngressiInput, + _i2.NegozioUncheckedCreateWithoutIngressiInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutIngressiInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutIngressiInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutIngressiInput, + _i2.NegozioUncheckedUpdateWithoutIngressiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneRequiredWithoutIngressiNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneRequiredWithoutIngressiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutIngressiInput, + _i2.NegozioUncheckedCreateWithoutIngressiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutIngressiInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutIngressiInput? upsert; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutIngressiInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutIngressiInput, + _i2.NegozioUncheckedUpdateWithoutIngressiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class IngressiUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUpdateWithoutUtenteInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i2.NegozioUpdateOneRequiredWithoutIngressiNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'negozio': negozio, + }; +} + +class IngressiUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const IngressiUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.IngressiWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithoutUtenteInput, + _i2.IngressiUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.IngressiCreateWithoutUtenteInput, + _i2.IngressiUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class IngressiUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const IngressiUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IngressiCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.IngressiCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.IngressiUncheckedCreateWithoutUtenteInput, + Iterable<_i2.IngressiUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IngressiCreateOrConnectWithoutUtenteInput, + Iterable<_i2.IngressiCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.IngressiUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.IngressiUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.IngressiCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IngressiWhereUniqueInput, + Iterable<_i2.IngressiWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.IngressiUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.IngressiUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.IngressiUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.IngressiUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereInput, + Iterable<_i2.IngressiScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutContrattiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutContrattiInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutContrattiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutContrattiInput, + _i2.UtenteUncheckedUpdateWithoutContrattiInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutContrattiInput, + _i2.UtenteUncheckedCreateWithoutContrattiInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutContrattiInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutContrattiInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutContrattiInput, + _i2.UtenteUncheckedUpdateWithoutContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneWithoutContrattiNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneWithoutContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutContrattiInput, + _i2.UtenteUncheckedCreateWithoutContrattiInput>? create; + + final _i2.UtenteCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutContrattiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutContrattiInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutContrattiInput, + _i2.UtenteUncheckedUpdateWithoutContrattiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutNegozioInput, + _i2.ContrattoUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutNegozioInput, + _i2.ContrattoUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutNegozioInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutNegozioInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.ContrattoCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutNegozioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutPraticheInput({ + this.codice, + this.nome, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutPraticheInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutPraticheInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutPraticheInput, + _i2.NegozioUncheckedUpdateWithoutPraticheInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutPraticheInput, + _i2.NegozioUncheckedCreateWithoutPraticheInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutPraticheInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutPraticheInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutPraticheInput, + _i2.NegozioUncheckedUpdateWithoutPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutPraticheNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutPraticheInput, + _i2.NegozioUncheckedCreateWithoutPraticheInput>? create; + + final _i2.NegozioCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutPraticheInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutPraticheInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutPraticheInput, + _i2.NegozioUncheckedUpdateWithoutPraticheInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateManyWithoutPraticaNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutPraticaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutPraticaInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutPraticaInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutPraticaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutPraticaInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutPraticaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutPraticaInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutPraticaInput>>? upsert; + + final _i2.ContrattoCreateManyPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutPraticaInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutPraticaInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutPraticaInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutPraticaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class PraticaUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.negozio, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutUtenteInput, + _i2.PraticaUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutUtenteInput, + _i2.PraticaUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class PraticaUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutUtenteInput, + Iterable<_i2.PraticaUncheckedCreateWithoutUtenteInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutUtenteInput, + Iterable<_i2.PraticaCreateOrConnectWithoutUtenteInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.PraticaCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutOpportunitaGestiteInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutOpportunitaGestiteInput, + _i2.UtenteUncheckedUpdateWithoutOpportunitaGestiteInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class UtenteUpdateManyWithoutOpportunitaGestiteNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithoutOpportunitaGestiteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutOpportunitaGestiteInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutOpportunitaGestiteInput>, + _i1.PrismaUnion< + _i2.UtenteUncheckedCreateWithoutOpportunitaGestiteInput, + Iterable< + _i2 + .UtenteUncheckedCreateWithoutOpportunitaGestiteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput, + Iterable<_i2.UtenteCreateOrConnectWithoutOpportunitaGestiteInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpsertWithWhereUniqueWithoutOpportunitaGestiteInput>>? + upsert; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpdateWithWhereUniqueWithoutOpportunitaGestiteInput>>? + update; + + final _i1.PrismaUnion< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput, + Iterable< + _i2.UtenteUpdateManyWithWhereWithoutOpportunitaGestiteInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OpportunitaUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateWithoutLeadsInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.gestoriLead, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.UtenteUpdateManyWithoutOpportunitaGestiteNestedInput? gestoriLead; + + final _i2.UtenteUpdateManyWithoutOpportunitaAssegnateNestedInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUncheckedUpdateWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateWithoutLeadsInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.gestoriLead, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaGestiteNestedInput? + gestoriLead; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateNestedInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUpsertWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaUpsertWithoutLeadsInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutLeadsInput, + _i2.OpportunitaUncheckedUpdateWithoutLeadsInput> update; + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutLeadsInput, + _i2.OpportunitaUncheckedCreateWithoutLeadsInput> create; + + final _i2.OpportunitaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class OpportunitaUpdateToOneWithWhereWithoutLeadsInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateToOneWithWhereWithoutLeadsInput({ + this.where, + required this.data, + }); + + final _i2.OpportunitaWhereInput? where; + + final _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutLeadsInput, + _i2.OpportunitaUncheckedUpdateWithoutLeadsInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OpportunitaUpdateOneRequiredWithoutLeadsNestedInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateOneRequiredWithoutLeadsNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.OpportunitaCreateWithoutLeadsInput, + _i2.OpportunitaUncheckedCreateWithoutLeadsInput>? create; + + final _i2.OpportunitaCreateOrConnectWithoutLeadsInput? connectOrCreate; + + final _i2.OpportunitaUpsertWithoutLeadsInput? upsert; + + final _i2.OpportunitaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.OpportunitaUpdateToOneWithWhereWithoutLeadsInput, + _i1.PrismaUnion<_i2.OpportunitaUpdateWithoutLeadsInput, + _i2.OpportunitaUncheckedUpdateWithoutLeadsInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class LeadUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutSoggettoInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutSoggettoInput, + _i2.LeadUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutSoggettoInput, + _i2.LeadUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.LeadUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.LeadUncheckedCreateWithoutSoggettoInput>>>>? create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.LeadCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.LeadUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.LeadCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.LeadUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutProdottiOrdinatiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedUpdateWithoutProdottiOrdinatiInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedCreateWithoutProdottiOrdinatiInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutProdottiOrdinatiInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedUpdateWithoutProdottiOrdinatiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedCreateWithoutProdottiOrdinatiInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutProdottiOrdinatiInput? + connectOrCreate; + + final _i2.SoggettoUpsertWithoutProdottiOrdinatiInput? upsert; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutProdottiOrdinatiInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutProdottiOrdinatiInput, + _i2.SoggettoUncheckedUpdateWithoutProdottiOrdinatiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OrdineUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutDomicilioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutDomicilioInput, + _i2.OrdineUncheckedUpdateWithoutDomicilioInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutDomicilioInput, + _i2.OrdineUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutDomicilioInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutDomicilioInput, + Iterable<_i2.OrdineUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.OrdineCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutDomicilioInput>>? upsert; + + final _i2.OrdineCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutDomicilioInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutDomicilioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUpsertWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithoutContrattiEnelFibraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedUpdateWithoutContrattiEnelFibraInput> update; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelFibraInput> create; + + final _i2.DomicilioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class DomicilioUpdateToOneWithWhereWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const DomicilioUpdateToOneWithWhereWithoutContrattiEnelFibraInput({ + this.where, + required this.data, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedUpdateWithoutContrattiEnelFibraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.DomicilioUpsertWithoutContrattiEnelFibraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.DomicilioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.DomicilioUpdateToOneWithWhereWithoutContrattiEnelFibraInput, + _i1.PrismaUnion<_i2.DomicilioUpdateWithoutContrattiEnelFibraInput, + _i2.DomicilioUncheckedUpdateWithoutContrattiEnelFibraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelFibraUpdateWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithoutOffertaInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.stato, + this.contratto, + this.domicilio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + stato; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + contratto; + + final _i2.DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutOffertaInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutOffertaInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutOffertaInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutOffertaInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutOffertaInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutOffertaInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutOffertaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutOffertaInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyOffertaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutOffertaInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutOffertaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OffertaUpdateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutServizioEwoInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithWhereUniqueWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithWhereUniqueWithoutServizioEwoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OffertaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutServizioEwoInput, + _i2.OffertaUncheckedUpdateWithoutServizioEwoInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutServizioEwoInput, + _i2.OffertaUncheckedCreateWithoutServizioEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OffertaUpdateManyWithoutServizioEwoNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateManyWithoutServizioEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.OffertaCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.OffertaUncheckedCreateWithoutServizioEwoInput>>>>? create; + + final _i1.PrismaUnion<_i2.OffertaCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.OffertaCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OffertaUpsertWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.OffertaUpsertWithWhereUniqueWithoutServizioEwoInput>>? + upsert; + + final _i2.OffertaCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OffertaWhereUniqueInput, + Iterable<_i2.OffertaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.OffertaUpdateWithWhereUniqueWithoutServizioEwoInput>>? + update; + + final _i1.PrismaUnion<_i2.OffertaUpdateManyWithWhereWithoutServizioEwoInput, + Iterable<_i2.OffertaUpdateManyWithWhereWithoutServizioEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereInput, + Iterable<_i2.OffertaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutFornitoreInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutFornitoreInput, + _i2.ServizioEwoUncheckedUpdateWithoutFornitoreInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitoreInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ServizioEwoUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2.ServizioEwoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpsertWithWhereUniqueWithoutFornitoreInput>>? + upsert; + + final _i2.ServizioEwoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpdateWithWhereUniqueWithoutFornitoreInput>>? + update; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyWithWhereWithoutFornitoreInput, + Iterable<_i2.ServizioEwoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornitoreUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreUpdateWithoutProdottiInput({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutFornitoreNestedInput? serviziEwo; + + final _i2.ModuloContrattoUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + }; +} + +class ModuloContrattoUncheckedUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateWithoutFornitoreInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedUpdateManyWithoutModuloNestedInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutFornitoreInput, + _i2.ModuloContrattoUncheckedUpdateWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutFornitoreInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateManyMutationInput, + _i2.ModuloContrattoUncheckedUpdateManyWithoutFornitoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput>>? + upsert; + + final _i2.ModuloContrattoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput>>? + update; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornitoreUncheckedUpdateWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedUpdateWithoutProdottiInput({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutFornitoreNestedInput? + serviziEwo; + + final _i2.ModuloContrattoUncheckedUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + }; +} + +class FornitoreUpsertWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreUpsertWithoutProdottiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutProdottiInput, + _i2.FornitoreUncheckedUpdateWithoutProdottiInput> update; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutProdottiInput, + _i2.FornitoreUncheckedCreateWithoutProdottiInput> create; + + final _i2.FornitoreWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornitoreUpdateToOneWithWhereWithoutProdottiInput + implements _i1.JsonConvertible> { + const FornitoreUpdateToOneWithWhereWithoutProdottiInput({ + this.where, + required this.data, + }); + + final _i2.FornitoreWhereInput? where; + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutProdottiInput, + _i2.FornitoreUncheckedUpdateWithoutProdottiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornitoreUpdateOneRequiredWithoutProdottiNestedInput + implements _i1.JsonConvertible> { + const FornitoreUpdateOneRequiredWithoutProdottiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutProdottiInput, + _i2.FornitoreUncheckedCreateWithoutProdottiInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutProdottiInput? connectOrCreate; + + final _i2.FornitoreUpsertWithoutProdottiInput? upsert; + + final _i2.FornitoreWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornitoreUpdateToOneWithWhereWithoutProdottiInput, + _i1.PrismaUnion<_i2.FornitoreUpdateWithoutProdottiInput, + _i2.FornitoreUncheckedUpdateWithoutProdottiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ProdottoUpdateWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithoutProdottiOrdinatiInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttore, + this.fornitore, + this.tipoProdotto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i2.ProduttoreUpdateOneRequiredWithoutProdottiNestedInput? produttore; + + final _i2.FornitoreUpdateOneRequiredWithoutProdottiNestedInput? fornitore; + + final _i2.TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput? + tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput + implements _i1.JsonConvertible> { + const ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutProdottiOrdinatiInput, + _i2.ProdottoUncheckedUpdateWithoutProdottiOrdinatiInput> update; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProdottiOrdinatiInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProdottiOrdinatiInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProdottiOrdinatiInput, + Iterable< + _i2 + .ProdottoUncheckedCreateWithoutProdottiOrdinatiInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProdottiOrdinatiInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpsertWithWhereUniqueWithoutProdottiOrdinatiInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpdateWithWhereUniqueWithoutProdottiOrdinatiInput>>? + update; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput, + Iterable< + _i2.ProdottoUpdateManyWithWhereWithoutProdottiOrdinatiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class OrdineUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutSoggettoInput, + _i2.OrdineUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutSoggettoInput, + _i2.OrdineUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.OrdineUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.OrdineCreateOrConnectWithoutSoggettoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.OrdineCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutNegozioPreferitoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutNegozioPreferitoInput, + _i2.SoggettoUncheckedUpdateWithoutNegozioPreferitoInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class SoggettoUpdateManyWithoutNegozioPreferitoNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateManyWithoutNegozioPreferitoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.SoggettoCreateWithoutNegozioPreferitoInput, + _i1.PrismaUnion< + Iterable<_i2.SoggettoCreateWithoutNegozioPreferitoInput>, + _i1.PrismaUnion< + _i2.SoggettoUncheckedCreateWithoutNegozioPreferitoInput, + Iterable< + _i2 + .SoggettoUncheckedCreateWithoutNegozioPreferitoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput, + Iterable<_i2.SoggettoCreateOrConnectWithoutNegozioPreferitoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpsertWithWhereUniqueWithoutNegozioPreferitoInput>>? + upsert; + + final _i2.SoggettoCreateManyNegozioPreferitoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.SoggettoWhereUniqueInput, + Iterable<_i2.SoggettoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpdateWithWhereUniqueWithoutNegozioPreferitoInput>>? + update; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput, + Iterable< + _i2.SoggettoUpdateManyWithWhereWithoutNegozioPreferitoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereInput, + Iterable<_i2.SoggettoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutContrattiInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutContrattiInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutContrattiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutContrattiInput, + _i2.NegozioUncheckedUpdateWithoutContrattiInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutContrattiInput, + _i2.NegozioUncheckedCreateWithoutContrattiInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutContrattiInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutContrattiInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutContrattiInput, + _i2.NegozioUncheckedUpdateWithoutContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutContrattiNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutContrattiInput, + _i2.NegozioUncheckedCreateWithoutContrattiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutContrattiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutContrattiInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutContrattiInput, + _i2.NegozioUncheckedUpdateWithoutContrattiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutUtenteInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutUtenteInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutUtenteInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutUtenteInput, + _i2.ContrattoUncheckedUpdateWithoutUtenteInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutUtenteInput, + _i2.ContrattoUncheckedCreateWithoutUtenteInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateManyWithoutUtenteNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutUtenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutUtenteInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutUtenteInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutUtenteInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutUtenteInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutUtenteInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutUtenteInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutUtenteInput>>? upsert; + + final _i2.ContrattoCreateManyUtenteInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutUtenteInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutUtenteInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutUtenteInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutUtenteInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class UtenteUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutNegozioInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.UtenteWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutNegozioInput, + _i2.UtenteUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutNegozioInput, + _i2.UtenteUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class UtenteUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.UtenteCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.UtenteCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.UtenteUncheckedCreateWithoutNegozioInput, + Iterable<_i2.UtenteUncheckedCreateWithoutNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.UtenteCreateOrConnectWithoutNegozioInput, + Iterable<_i2.UtenteCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.UtenteUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.UtenteUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.UtenteCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.UtenteWhereUniqueInput, + Iterable<_i2.UtenteWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.UtenteUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.UtenteUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.UtenteUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereInput, + Iterable<_i2.UtenteScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutSoggettiInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutSoggettiInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutSoggettiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutSoggettiInput, + _i2.NegozioUncheckedUpdateWithoutSoggettiInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutSoggettiInput, + _i2.NegozioUncheckedCreateWithoutSoggettiInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutSoggettiInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutSoggettiInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutSoggettiInput, + _i2.NegozioUncheckedUpdateWithoutSoggettiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutSoggettiNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutSoggettiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutSoggettiInput, + _i2.NegozioUncheckedCreateWithoutSoggettiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutSoggettiInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutSoggettiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutSoggettiInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutSoggettiInput, + _i2.NegozioUncheckedUpdateWithoutSoggettiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutSoggettoBusinessInfoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedUpdateWithoutSoggettoBusinessInfoInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedUpdateWithoutSoggettoBusinessInfoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneRequiredWithoutSoggettoBusinessInfoNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneRequiredWithoutSoggettoBusinessInfoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedCreateWithoutSoggettoBusinessInfoInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.SoggettoUpsertWithoutSoggettoBusinessInfoInput? upsert; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutSoggettoBusinessInfoInput, + _i2.SoggettoUncheckedUpdateWithoutSoggettoBusinessInfoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoBusinessInfoUpdateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateWithoutLegaleRappresentanteInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.referente, + this.soggetto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i2.ReferenteUpdateOneWithoutSoggettoBusinessInfoNestedInput? referente; + + final _i2.SoggettoUpdateOneRequiredWithoutSoggettoBusinessInfoNestedInput? + soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateWithoutLegaleRappresentanteInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2.ReferenteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoUpsertWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpsertWithoutLegaleRappresentanteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedUpdateWithoutLegaleRappresentanteInput> + update; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput> + create; + + final _i2.SoggettoBusinessInfoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoBusinessInfoUpdateToOneWithWhereWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateToOneWithWhereWithoutLegaleRappresentanteInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoBusinessInfoWhereInput? where; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedUpdateWithoutLegaleRappresentanteInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoBusinessInfoUpdateOneRequiredWithoutLegaleRappresentanteNestedInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateOneRequiredWithoutLegaleRappresentanteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoCreateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoUpsertWithoutLegaleRappresentanteInput? upsert; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2 + .SoggettoBusinessInfoUpdateToOneWithWhereWithoutLegaleRappresentanteInput, + _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateWithoutLegaleRappresentanteInput, + _i2 + .SoggettoBusinessInfoUncheckedUpdateWithoutLegaleRappresentanteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class LegaleRappresentanteUpdateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateWithoutIndirizzoEmailInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + final _i2 + .SoggettoBusinessInfoUpdateOneRequiredWithoutLegaleRappresentanteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedUpdateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateWithoutIndirizzoEmailInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2 + .NumeroTelefonoUncheckedUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + }; +} + +class LegaleRappresentanteUpsertWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpsertWithoutIndirizzoEmailInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedUpdateWithoutIndirizzoEmailInput> update; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput> create; + + final _i2.LegaleRappresentanteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class LegaleRappresentanteUpdateToOneWithWhereWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateToOneWithWhereWithoutIndirizzoEmailInput({ + this.where, + required this.data, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedUpdateWithoutIndirizzoEmailInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LegaleRappresentanteUpdateOneWithoutIndirizzoEmailNestedInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateOneWithoutIndirizzoEmailNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutIndirizzoEmailInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutIndirizzoEmailInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutIndirizzoEmailInput? + connectOrCreate; + + final _i2.LegaleRappresentanteUpsertWithoutIndirizzoEmailInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .LegaleRappresentanteUpdateToOneWithWhereWithoutIndirizzoEmailInput, + _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutIndirizzoEmailInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutIndirizzoEmailInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class IndirizzoEmailUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateWithoutReferenteInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggetto, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutIndirizziEmailNestedInput? soggetto; + + final _i2.LegaleRappresentanteUpdateOneWithoutIndirizzoEmailNestedInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailUpsertWithoutReferenteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpsertWithoutReferenteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutReferenteInput> update; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput> create; + + final _i2.IndirizzoEmailWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class IndirizzoEmailUpdateOneWithoutReferenteNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateOneWithoutReferenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutReferenteInput>? create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.IndirizzoEmailUpsertWithoutReferenteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateToOneWithWhereWithoutReferenteInput, + _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutReferenteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutReferenteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoBusinessInfoUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateWithoutReferenteInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.soggetto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i2.LegaleRappresentanteUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + final _i2.SoggettoUpdateOneRequiredWithoutSoggettoBusinessInfoNestedInput? + soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateWithoutReferenteInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .LegaleRappresentanteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class SoggettoBusinessInfoUpsertWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpsertWithoutReferenteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutReferenteInput> update; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput> create; + + final _i2.SoggettoBusinessInfoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoBusinessInfoUpdateToOneWithWhereWithoutReferenteInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateToOneWithWhereWithoutReferenteInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoBusinessInfoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutReferenteInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoBusinessInfoUpdateOneRequiredWithoutReferenteNestedInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateOneRequiredWithoutReferenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutReferenteInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoUpsertWithoutReferenteInput? upsert; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateToOneWithWhereWithoutReferenteInput, + _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutReferenteInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutReferenteInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ReferenteUpdateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteUpdateWithoutNumeroTelefonoInput({ + this.uuid, + this.nome, + this.cognome, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.IndirizzoEmailUpdateOneWithoutReferenteNestedInput? indirizzoEmail; + + final _i2.SoggettoBusinessInfoUpdateOneRequiredWithoutReferenteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedUpdateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateWithoutNumeroTelefonoInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2.IndirizzoEmailUncheckedUpdateOneWithoutReferenteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteUpsertWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteUpsertWithoutNumeroTelefonoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedUpdateWithoutNumeroTelefonoInput> update; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedCreateWithoutNumeroTelefonoInput> create; + + final _i2.ReferenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ReferenteUpdateToOneWithWhereWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const ReferenteUpdateToOneWithWhereWithoutNumeroTelefonoInput({ + this.where, + required this.data, + }); + + final _i2.ReferenteWhereInput? where; + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedUpdateWithoutNumeroTelefonoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ReferenteUpdateOneWithoutNumeroTelefonoNestedInput + implements _i1.JsonConvertible> { + const ReferenteUpdateOneWithoutNumeroTelefonoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedCreateWithoutNumeroTelefonoInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutNumeroTelefonoInput? connectOrCreate; + + final _i2.ReferenteUpsertWithoutNumeroTelefonoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ReferenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ReferenteUpdateToOneWithWhereWithoutNumeroTelefonoInput, + _i1.PrismaUnion<_i2.ReferenteUpdateWithoutNumeroTelefonoInput, + _i2.ReferenteUncheckedUpdateWithoutNumeroTelefonoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class NumeroTelefonoUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateWithoutSoggettoInput({ + this.uuid, + this.numero, + this.etichetta, + this.legaleRappresentate, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.LegaleRappresentanteUpdateOneWithoutNumeroTelefonoNestedInput? + legaleRappresentate; + + final _i2.ReferenteUpdateOneWithoutNumeroTelefonoNestedInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.NumeroTelefonoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutSoggettoInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class NumeroTelefonoUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.NumeroTelefonoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.NumeroTelefonoCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.NumeroTelefonoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.NumeroTelefonoWhereUniqueInput, + Iterable<_i2.NumeroTelefonoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.NumeroTelefonoUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.NumeroTelefonoUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereInput, + Iterable<_i2.NumeroTelefonoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutIndirizziEmailInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutIndirizziEmailInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutIndirizziEmailInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedUpdateWithoutIndirizziEmailInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedCreateWithoutIndirizziEmailInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutIndirizziEmailInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutIndirizziEmailInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedUpdateWithoutIndirizziEmailInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneWithoutIndirizziEmailNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneWithoutIndirizziEmailNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedCreateWithoutIndirizziEmailInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutIndirizziEmailInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutIndirizziEmailInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutIndirizziEmailInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutIndirizziEmailInput, + _i2.SoggettoUncheckedUpdateWithoutIndirizziEmailInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class IndirizzoEmailUpdateWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateWithoutLegaleRappresentanteInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggetto, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutIndirizziEmailNestedInput? soggetto; + + final _i2.ReferenteUpdateOneWithoutIndirizzoEmailNestedInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + }; +} + +class IndirizzoEmailUpsertWithoutLegaleRappresentanteInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpsertWithoutLegaleRappresentanteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput> update; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput> create; + + final _i2.IndirizzoEmailWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class IndirizzoEmailUpdateOneWithoutLegaleRappresentanteNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateOneWithoutLegaleRappresentanteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutLegaleRappresentanteInput, + _i2.IndirizzoEmailUncheckedCreateWithoutLegaleRappresentanteInput>? + create; + + final _i2.IndirizzoEmailCreateOrConnectWithoutLegaleRappresentanteInput? + connectOrCreate; + + final _i2.IndirizzoEmailUpsertWithoutLegaleRappresentanteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.IndirizzoEmailWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .IndirizzoEmailUpdateToOneWithWhereWithoutLegaleRappresentanteInput, + _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithoutLegaleRappresentanteInput, + _i2 + .IndirizzoEmailUncheckedUpdateWithoutLegaleRappresentanteInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LegaleRappresentanteUpdateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateWithoutNumeroTelefonoInput({ + this.uuid, + this.nome, + this.cognome, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.IndirizzoEmailUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + final _i2 + .SoggettoBusinessInfoUpdateOneRequiredWithoutLegaleRappresentanteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedUpdateWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateWithoutNumeroTelefonoInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2 + .IndirizzoEmailUncheckedUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteUpsertWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpsertWithoutNumeroTelefonoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedUpdateWithoutNumeroTelefonoInput> update; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput> create; + + final _i2.LegaleRappresentanteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class LegaleRappresentanteUpdateToOneWithWhereWithoutNumeroTelefonoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateToOneWithWhereWithoutNumeroTelefonoInput({ + this.where, + required this.data, + }); + + final _i2.LegaleRappresentanteWhereInput? where; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedUpdateWithoutNumeroTelefonoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LegaleRappresentanteUpdateOneWithoutNumeroTelefonoNestedInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateOneWithoutNumeroTelefonoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutNumeroTelefonoInput, + _i2.LegaleRappresentanteUncheckedCreateWithoutNumeroTelefonoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutNumeroTelefonoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteUpsertWithoutNumeroTelefonoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .LegaleRappresentanteUpdateToOneWithWhereWithoutNumeroTelefonoInput, + _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutNumeroTelefonoInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutNumeroTelefonoInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class NumeroTelefonoUpdateWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateWithoutReferenteInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggetto, + this.legaleRappresentate, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutNumeriTelefonoNestedInput? soggetto; + + final _i2.LegaleRappresentanteUpdateOneWithoutNumeroTelefonoNestedInput? + legaleRappresentate; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + }; +} + +class NumeroTelefonoUpsertWithoutReferenteInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpsertWithoutReferenteInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutReferenteInput> update; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput> create; + + final _i2.NumeroTelefonoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NumeroTelefonoUpdateOneWithoutReferenteNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateOneWithoutReferenteNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedCreateWithoutReferenteInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutReferenteInput? connectOrCreate; + + final _i2.NumeroTelefonoUpsertWithoutReferenteInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateToOneWithWhereWithoutReferenteInput, + _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutReferenteInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutReferenteInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ReferenteUpdateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteUpdateWithoutIndirizzoEmailInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutReferenteNestedInput? numeroTelefono; + + final _i2.SoggettoBusinessInfoUpdateOneRequiredWithoutReferenteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedUpdateWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateWithoutIndirizzoEmailInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoUncheckedUpdateOneWithoutReferenteNestedInput? + numeroTelefono; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + }; +} + +class ReferenteUpsertWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteUpsertWithoutIndirizzoEmailInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedUpdateWithoutIndirizzoEmailInput> update; + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedCreateWithoutIndirizzoEmailInput> create; + + final _i2.ReferenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ReferenteUpdateToOneWithWhereWithoutIndirizzoEmailInput + implements _i1.JsonConvertible> { + const ReferenteUpdateToOneWithWhereWithoutIndirizzoEmailInput({ + this.where, + required this.data, + }); + + final _i2.ReferenteWhereInput? where; + + final _i1.PrismaUnion<_i2.ReferenteUpdateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedUpdateWithoutIndirizzoEmailInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ReferenteUpdateOneWithoutIndirizzoEmailNestedInput + implements _i1.JsonConvertible> { + const ReferenteUpdateOneWithoutIndirizzoEmailNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ReferenteCreateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedCreateWithoutIndirizzoEmailInput>? create; + + final _i2.ReferenteCreateOrConnectWithoutIndirizzoEmailInput? connectOrCreate; + + final _i2.ReferenteUpsertWithoutIndirizzoEmailInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.ReferenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ReferenteUpdateToOneWithWhereWithoutIndirizzoEmailInput, + _i1.PrismaUnion<_i2.ReferenteUpdateWithoutIndirizzoEmailInput, + _i2.ReferenteUncheckedUpdateWithoutIndirizzoEmailInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class IndirizzoEmailUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateWithoutSoggettoInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.referente, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.ReferenteUpdateOneWithoutIndirizzoEmailNestedInput? referente; + + final _i2.LegaleRappresentanteUpdateOneWithoutIndirizzoEmailNestedInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.IndirizzoEmailWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.IndirizzoEmailUpdateWithoutSoggettoInput, + _i2.IndirizzoEmailUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class IndirizzoEmailUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.IndirizzoEmailCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.IndirizzoEmailCreateWithoutSoggettoInput>, + _i1.PrismaUnion< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.IndirizzoEmailCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.IndirizzoEmailWhereUniqueInput, + Iterable<_i2.IndirizzoEmailWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable< + _i2.IndirizzoEmailUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion< + _i2.IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.IndirizzoEmailUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereInput, + Iterable<_i2.IndirizzoEmailScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutContrattiInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutContrattiInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutContrattiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutContrattiInput, + _i2.SoggettoUncheckedUpdateWithoutContrattiInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutContrattiInput, + _i2.SoggettoUncheckedCreateWithoutContrattiInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutContrattiInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutContrattiInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutContrattiInput, + _i2.SoggettoUncheckedUpdateWithoutContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneWithoutContrattiNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneWithoutContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutContrattiInput, + _i2.SoggettoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutContrattiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutContrattiInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutContrattiInput, + _i2.SoggettoUncheckedUpdateWithoutContrattiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class ContrattoUpsertWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithoutContrattiEnelXAssicurazioneInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.ContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> + update; + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + final _i2.ContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const ContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput({ + this.where, + required this.data, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion< + _i2.ContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.ContrattoUpsertWithoutContrattiEnelXAssicurazioneInput? upsert; + + final _i2.ContrattoWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput, + _i1.PrismaUnion< + _i2.ContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .ContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OffertaUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithoutContrattiEnelXAssicurazioneInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> update; + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> create; + + final _i2.OffertaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class OffertaUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const OffertaUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput({ + this.where, + required this.data, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion< + _i2.OffertaUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.OffertaCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.OffertaUpsertWithoutContrattiEnelXAssicurazioneInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.OffertaWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .OffertaUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput, + _i1.PrismaUnion< + _i2.OffertaUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .OffertaUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithoutStatoInput({ + this.uuid, + this.contratto, + this.domicilio, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2 + .ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + contratto; + + final _i2 + .DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + domicilio; + + final _i2.OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneUpdateWithoutStatoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelXAssicurazioneCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutContrattiInput({ + this.id, + this.nome, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ServizioEwoUncheckedUpdateWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutStatiPossibiliContrattiInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithoutStatiPossibiliContrattiInput, + _i2.ServizioEwoUncheckedUpdateWithoutStatiPossibiliContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyMutationInput, + _i2.ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i1.PrismaUnion< + Iterable< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUncheckedUpdateWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutContrattiInput({ + this.id, + this.nome, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpsertWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithoutContrattiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiInput> update; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiInput> create; + + final _i2.StatoContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoContrattoUpdateToOneWithWhereWithoutContrattiInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateToOneWithWhereWithoutContrattiInput({ + this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiInput? connectOrCreate; + + final _i2.StatoContrattoUpsertWithoutContrattiInput? upsert; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateToOneWithWhereWithoutContrattiInput, + _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpsertWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithoutContrattiEnelGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelGasInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelGasInput> create; + + final _i2.ContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const ContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput({ + this.where, + required this.data, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.ContrattoUpsertWithoutContrattiEnelGasInput? upsert; + + final _i2.ContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput, + _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelGasInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OffertaUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithoutContrattiEnelGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelGasInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelGasInput> create; + + final _i2.OffertaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class OffertaUpdateToOneWithWhereWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const OffertaUpdateToOneWithWhereWithoutContrattiEnelGasInput({ + this.where, + required this.data, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateOneWithoutContrattiEnelGasNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateOneWithoutContrattiEnelGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelGasInput? connectOrCreate; + + final _i2.OffertaUpsertWithoutContrattiEnelGasInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.OffertaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateToOneWithWhereWithoutContrattiEnelGasInput, + _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelGasInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelGasUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithoutFornituraGasInput({ + this.uuid, + this.stato, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + stato; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelGasNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutFornituraGasInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutFornituraGasInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutFornituraGasInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutFornituraGasInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutFornituraGasInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasCreateOrConnectWithoutFornituraGasInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUpsertWithWhereUniqueWithoutFornituraGasInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyFornituraGasInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput, + Iterable< + _i2 + .ContrattoEnelGasUpdateWithWhereUniqueWithoutFornituraGasInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput, + Iterable< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutFornituraGasInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornituraGasUpdateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateWithoutFornituraInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasUpsertWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraGasUpsertWithoutFornituraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutFornituraInput, + _i2.FornituraGasUncheckedUpdateWithoutFornituraInput> update; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput> create; + + final _i2.FornituraGasWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraGasUpdateOneWithoutFornituraNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateOneWithoutFornituraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutFornituraInput, + _i2.FornituraGasUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraGasUpsertWithoutFornituraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.FornituraGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateToOneWithWhereWithoutFornituraInput, + _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutFornituraInput, + _i2.FornituraGasUncheckedUpdateWithoutFornituraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class FornituraUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithoutDomicilioInput({ + this.uuid, + this.etichetta, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput? + servizioEwo; + + final _i2.FornituraLuceUpdateOneWithoutFornituraNestedInput? fornituraLuce; + + final _i2.FornituraGasUpdateOneWithoutFornituraNestedInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUpsertWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const FornituraUpsertWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutDomicilioInput, + _i2.FornituraUncheckedUpdateWithoutDomicilioInput> update; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutDomicilioInput, + _i2.FornituraUncheckedCreateWithoutDomicilioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class FornituraUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const FornituraUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutDomicilioInput>>>>? create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutDomicilioInput, + Iterable<_i2.FornituraCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.FornituraUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.FornituraUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.FornituraCreateManyDomicilioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable<_i2.FornituraUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyWithWhereWithoutDomicilioInput, + Iterable<_i2.FornituraUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUpsertWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithoutContrattiEnelXAssicurazioneInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.DomicilioUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> + update; + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + final _i2.DomicilioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class DomicilioUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const DomicilioUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput({ + this.where, + required this.data, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion< + _i2.DomicilioUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutContrattiEnelXAssicurazioneInput, + _i2.DomicilioUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2.DomicilioCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.DomicilioUpsertWithoutContrattiEnelXAssicurazioneInput? upsert; + + final _i2.DomicilioWhereUniqueInput? connect; + + final _i1 + .PrismaUnion< + _i2 + .DomicilioUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput, + _i1.PrismaUnion< + _i2.DomicilioUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .DomicilioUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithoutContrattoInput({ + this.uuid, + this.stato, + this.domicilio, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2 + .StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + stato; + + final _i2 + .DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + domicilio; + + final _i2.OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutContrattoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutContrattoInput> + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput> + create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyContrattoInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutContrattiEnelFibraInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpsertWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithoutContrattiEnelFibraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelFibraInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelFibraInput> create; + + final _i2.ContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const ContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput({ + this.where, + required this.data, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelFibraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.ContrattoUpsertWithoutContrattiEnelFibraInput? upsert; + + final _i2.ContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput, + _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelFibraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelFibraUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithoutStatoInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.contratto, + this.offerta, + this.domicilio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelFibraNestedInput? offerta; + + final _i2.DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutStatoInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelFibraUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutStatoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelFibraUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.contratti, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.StatoContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutServiziEwoInput, + _i2.StatoContrattoUncheckedUpdateWithoutServiziEwoInput> update; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutServiziEwoInput, + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class StatoContrattoUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoContrattoCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoContrattoUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2 + .StatoContrattoUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoContrattoCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpsertWithWhereUniqueWithoutServiziEwoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.StatoContrattoWhereUniqueInput, + Iterable<_i2.StatoContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpdateWithWhereUniqueWithoutServiziEwoInput>>? + update; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput, + Iterable< + _i2.StatoContrattoUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereInput, + Iterable<_i2.StatoContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutStatiPossibiliPraticheInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutStatiPossibiliPraticheInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutStatiPossibiliPraticheInput, + _i2.ServizioEwoUncheckedUpdateWithoutStatiPossibiliPraticheInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i2.ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutStatiPossibiliPraticheInput, + _i2.ServizioEwoUncheckedUpdateWithoutStatiPossibiliPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyMutationInput, + _i2.ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUpdateManyWithoutStatiPossibiliPraticheNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithoutStatiPossibiliPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoPraticaUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateWithoutPraticheInput({ + this.id, + this.nome, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliPraticheNestedInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutStatiPossibiliPraticheInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliPraticheInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliPraticheInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliPraticheInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliPraticheInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput, + Iterable< + _i2 + .ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliPraticheInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoPraticaUncheckedUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateWithoutPraticheInput({ + this.id, + this.nome, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheNestedInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaUpsertWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaUpsertWithoutPraticheInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaUpdateWithoutPraticheInput, + _i2.StatoPraticaUncheckedUpdateWithoutPraticheInput> update; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutPraticheInput, + _i2.StatoPraticaUncheckedCreateWithoutPraticheInput> create; + + final _i2.StatoPraticaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoPraticaUpdateToOneWithWhereWithoutPraticheInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateToOneWithWhereWithoutPraticheInput({ + this.where, + required this.data, + }); + + final _i2.StatoPraticaWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoPraticaUpdateWithoutPraticheInput, + _i2.StatoPraticaUncheckedUpdateWithoutPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoPraticaUpdateOneWithoutPraticheNestedInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateOneWithoutPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutPraticheInput, + _i2.StatoPraticaUncheckedCreateWithoutPraticheInput>? create; + + final _i2.StatoPraticaCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.StatoPraticaUpsertWithoutPraticheInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.StatoPraticaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpdateToOneWithWhereWithoutPraticheInput, + _i1.PrismaUnion<_i2.StatoPraticaUpdateWithoutPraticheInput, + _i2.StatoPraticaUncheckedUpdateWithoutPraticheInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class PraticaUpdateWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutNegozioInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUpsertWithWhereUniqueWithoutNegozioInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithWhereUniqueWithoutNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutNegozioInput, + _i2.PraticaUncheckedUpdateWithoutNegozioInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutNegozioInput, + _i2.PraticaUncheckedCreateWithoutNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class PraticaUpdateManyWithoutNegozioNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithoutNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutNegozioInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutNegozioInput, + Iterable<_i2.PraticaUncheckedCreateWithoutNegozioInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutNegozioInput, + Iterable<_i2.PraticaCreateOrConnectWithoutNegozioInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutNegozioInput>>? upsert; + + final _i2.PraticaCreateManyNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutNegozioInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutNegozioInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutNegozioInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutNegozioInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class NegozioUpdateWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutUtentiInput({ + this.codice, + this.nome, + this.pratiche, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutUtentiInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithoutUtentiInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutUtentiInput, + _i2.NegozioUncheckedUpdateWithoutUtentiInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutUtentiInput, + _i2.NegozioUncheckedCreateWithoutUtentiInput> create; + + final _i2.NegozioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NegozioUpdateToOneWithWhereWithoutUtentiInput + implements _i1.JsonConvertible> { + const NegozioUpdateToOneWithWhereWithoutUtentiInput({ + this.where, + required this.data, + }); + + final _i2.NegozioWhereInput? where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutUtentiInput, + _i2.NegozioUncheckedUpdateWithoutUtentiInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateOneWithoutUtentiNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateOneWithoutUtentiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutUtentiInput, + _i2.NegozioUncheckedCreateWithoutUtentiInput>? create; + + final _i2.NegozioCreateOrConnectWithoutUtentiInput? connectOrCreate; + + final _i2.NegozioUpsertWithoutUtentiInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NegozioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NegozioUpdateToOneWithWhereWithoutUtentiInput, + _i1.PrismaUnion<_i2.NegozioUpdateWithoutUtentiInput, + _i2.NegozioUncheckedUpdateWithoutUtentiInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class UtenteUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteUpdateWithoutPraticheInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateWithoutPraticheInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUpsertWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteUpsertWithoutPraticheInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutPraticheInput, + _i2.UtenteUncheckedUpdateWithoutPraticheInput> update; + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutPraticheInput, + _i2.UtenteUncheckedCreateWithoutPraticheInput> create; + + final _i2.UtenteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class UtenteUpdateToOneWithWhereWithoutPraticheInput + implements _i1.JsonConvertible> { + const UtenteUpdateToOneWithWhereWithoutPraticheInput({ + this.where, + required this.data, + }); + + final _i2.UtenteWhereInput? where; + + final _i1.PrismaUnion<_i2.UtenteUpdateWithoutPraticheInput, + _i2.UtenteUncheckedUpdateWithoutPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class UtenteUpdateOneWithoutPraticheNestedInput + implements _i1.JsonConvertible> { + const UtenteUpdateOneWithoutPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.UtenteCreateWithoutPraticheInput, + _i2.UtenteUncheckedCreateWithoutPraticheInput>? create; + + final _i2.UtenteCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.UtenteUpsertWithoutPraticheInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.UtenteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.UtenteUpdateToOneWithWhereWithoutPraticheInput, + _i1.PrismaUnion<_i2.UtenteUpdateWithoutPraticheInput, + _i2.UtenteUncheckedUpdateWithoutPraticheInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class PraticaUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'contratto': contratto, + }; +} + +class PraticaUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutStatoInput, + _i2.PraticaUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutStatoInput, + _i2.PraticaUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class PraticaUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutStatoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutStatoInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutStatoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.PraticaCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutStatoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoPraticaUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutStatoNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.StatoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.StatoPraticaUpdateWithoutServiziEwoInput, + _i2.StatoPraticaUncheckedUpdateWithoutServiziEwoInput> update; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateWithoutServiziEwoInput, + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class StatoPraticaUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.StatoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.StatoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput>>? upsert; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.StatoPraticaWhereUniqueInput, + Iterable<_i2.StatoPraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable< + _i2.StatoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput>>? update; + + final _i1.PrismaUnion< + _i2.StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput, + Iterable<_i2.StatoPraticaUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereInput, + Iterable<_i2.StatoPraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutFornitureInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutFornitureInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithoutFornitureInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutFornitureInput, + _i2.ServizioEwoUncheckedUpdateWithoutFornitureInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitureInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitureInput> create; + + final _i2.ServizioEwoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ServizioEwoUpdateToOneWithWhereWithoutFornitureInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateToOneWithWhereWithoutFornitureInput({ + this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereInput? where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutFornitureInput, + _i2.ServizioEwoUncheckedUpdateWithoutFornitureInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutFornitureInput, + _i2.ServizioEwoUncheckedCreateWithoutFornitureInput>? create; + + final _i2.ServizioEwoCreateOrConnectWithoutFornitureInput? connectOrCreate; + + final _i2.ServizioEwoUpsertWithoutFornitureInput? upsert; + + final _i2.ServizioEwoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateToOneWithWhereWithoutFornitureInput, + _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutFornitureInput, + _i2.ServizioEwoUncheckedUpdateWithoutFornitureInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class FornituraUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithoutFornituraGasInput({ + this.uuid, + this.etichetta, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.DomicilioUpdateOneRequiredWithoutFornitureNestedInput? domicilio; + + final _i2.ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput? + servizioEwo; + + final _i2.FornituraLuceUpdateOneWithoutFornituraNestedInput? fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + }; +} + +class FornituraUncheckedUpdateWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateWithoutFornituraGasInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.fornituraLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + }; +} + +class FornituraUpsertWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraUpsertWithoutFornituraGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraGasInput, + _i2.FornituraUncheckedUpdateWithoutFornituraGasInput> update; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraGasInput, + _i2.FornituraUncheckedCreateWithoutFornituraGasInput> create; + + final _i2.FornituraWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraUpdateToOneWithWhereWithoutFornituraGasInput + implements _i1.JsonConvertible> { + const FornituraUpdateToOneWithWhereWithoutFornituraGasInput({ + this.where, + required this.data, + }); + + final _i2.FornituraWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraGasInput, + _i2.FornituraUncheckedUpdateWithoutFornituraGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraUpdateOneRequiredWithoutFornituraGasNestedInput + implements _i1.JsonConvertible> { + const FornituraUpdateOneRequiredWithoutFornituraGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraGasInput, + _i2.FornituraUncheckedCreateWithoutFornituraGasInput>? create; + + final _i2.FornituraCreateOrConnectWithoutFornituraGasInput? connectOrCreate; + + final _i2.FornituraUpsertWithoutFornituraGasInput? upsert; + + final _i2.FornituraWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraUpdateToOneWithWhereWithoutFornituraGasInput, + _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraGasInput, + _i2.FornituraUncheckedUpdateWithoutFornituraGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class FornituraGasUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraGasNestedInput? fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateWithoutContrattiEnelGasInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? classeMisuratoreGasId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + }; +} + +class FornituraGasUpsertWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpsertWithoutContrattiEnelGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedUpdateWithoutContrattiEnelGasInput> update; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedCreateWithoutContrattiEnelGasInput> create; + + final _i2.FornituraGasWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraGasUpdateToOneWithWhereWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateToOneWithWhereWithoutContrattiEnelGasInput({ + this.where, + required this.data, + }); + + final _i2.FornituraGasWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedUpdateWithoutContrattiEnelGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.FornituraGasUpsertWithoutContrattiEnelGasInput? upsert; + + final _i2.FornituraGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateToOneWithWhereWithoutContrattiEnelGasInput, + _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutContrattiEnelGasInput, + _i2.FornituraGasUncheckedUpdateWithoutContrattiEnelGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelGasUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithoutStatoInput({ + this.uuid, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + fornituraGas; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelGasNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutStatoInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutStatoInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelGasUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelGasUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutStatoInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutStatoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelGasUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutContrattiEnelFibraInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedUpdateWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutContrattiEnelFibraInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpsertWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithoutContrattiEnelFibraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelFibraInput> update; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput> create; + + final _i2.StatoContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput({ + this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelFibraInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelFibraInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelFibraInput? + connectOrCreate; + + final _i2.StatoContrattoUpsertWithoutContrattiEnelFibraInput? upsert; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelFibraInput, + _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithoutContrattiEnelFibraInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelFibraInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelFibraUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateWithoutContrattoInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.stato, + this.offerta, + this.domicilio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + stato; + + final _i2.OffertaUpdateOneWithoutContrattiEnelFibraNestedInput? offerta; + + final _i2.DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelFibraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraUpdateWithoutContrattoInput, + _i2.ContrattoEnelFibraUncheckedUpdateWithoutContrattoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelFibraCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelFibraUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelFibraCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelFibraCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraWhereUniqueInput, + Iterable<_i2.ContrattoEnelFibraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelFibraUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelFibraUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUpsertWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithoutContrattiEnelLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelLuceInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelLuceInput> create; + + final _i2.ContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class ContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const ContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput({ + this.where, + required this.data, + }); + + final _i2.ContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.ContrattoCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.ContrattoUpsertWithoutContrattiEnelLuceInput? upsert; + + final _i2.ContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.ContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput, + _i1.PrismaUnion<_i2.ContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.ContrattoUncheckedUpdateWithoutContrattiEnelLuceInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class OffertaUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUpsertWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaUpsertWithoutContrattiEnelLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelLuceInput> update; + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelLuceInput> create; + + final _i2.OffertaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class OffertaUpdateToOneWithWhereWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const OffertaUpdateToOneWithWhereWithoutContrattiEnelLuceInput({ + this.where, + required this.data, + }); + + final _i2.OffertaWhereInput? where; + + final _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OffertaUpdateOneWithoutContrattiEnelLuceNestedInput + implements _i1.JsonConvertible> { + const OffertaUpdateOneWithoutContrattiEnelLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.OffertaCreateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.OffertaCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.OffertaUpsertWithoutContrattiEnelLuceInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.OffertaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.OffertaUpdateToOneWithWhereWithoutContrattiEnelLuceInput, + _i1.PrismaUnion<_i2.OffertaUpdateWithoutContrattiEnelLuceInput, + _i2.OffertaUncheckedUpdateWithoutContrattiEnelLuceInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelLuceUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithoutFornituraLuceInput({ + this.uuid, + this.stato, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + stato; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelLuceNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutFornituraLuceInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutFornituraLuceInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelLuceUpdateManyWithoutFornituraLuceNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithoutFornituraLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutFornituraLuceInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutFornituraLuceInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput, + Iterable< + _i2.ContrattoEnelLuceCreateOrConnectWithoutFornituraLuceInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpsertWithWhereUniqueWithoutFornituraLuceInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyFornituraLuceInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpdateWithWhereUniqueWithoutFornituraLuceInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput, + Iterable< + _i2 + .ContrattoEnelLuceUpdateManyWithWhereWithoutFornituraLuceInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornituraLuceUpdateWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateWithoutFornituraInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceUpsertWithoutFornituraInput + implements _i1.JsonConvertible> { + const FornituraLuceUpsertWithoutFornituraInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutFornituraInput, + _i2.FornituraLuceUncheckedUpdateWithoutFornituraInput> update; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput> create; + + final _i2.FornituraLuceWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraLuceUpdateOneWithoutFornituraNestedInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateOneWithoutFornituraNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutFornituraInput, + _i2.FornituraLuceUncheckedCreateWithoutFornituraInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutFornituraInput? connectOrCreate; + + final _i2.FornituraLuceUpsertWithoutFornituraInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraLuceUpdateToOneWithWhereWithoutFornituraInput, + _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutFornituraInput, + _i2.FornituraLuceUncheckedUpdateWithoutFornituraInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class FornituraUpdateWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithoutServizioEwoInput({ + this.uuid, + this.etichetta, + this.domicilio, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.DomicilioUpdateOneRequiredWithoutFornitureNestedInput? domicilio; + + final _i2.FornituraLuceUpdateOneWithoutFornituraNestedInput? fornituraLuce; + + final _i2.FornituraGasUpdateOneWithoutFornituraNestedInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUpsertWithWhereUniqueWithoutServizioEwoInput + implements _i1.JsonConvertible> { + const FornituraUpsertWithWhereUniqueWithoutServizioEwoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.FornituraWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutServizioEwoInput, + _i2.FornituraUncheckedUpdateWithoutServizioEwoInput> update; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutServizioEwoInput, + _i2.FornituraUncheckedCreateWithoutServizioEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class FornituraUpdateManyWithoutServizioEwoNestedInput + implements _i1.JsonConvertible> { + const FornituraUpdateManyWithoutServizioEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraCreateWithoutServizioEwoInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraCreateWithoutServizioEwoInput>, + _i1.PrismaUnion< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput, + Iterable< + _i2.FornituraUncheckedCreateWithoutServizioEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.FornituraCreateOrConnectWithoutServizioEwoInput, + Iterable<_i2.FornituraCreateOrConnectWithoutServizioEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.FornituraUpsertWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.FornituraUpsertWithWhereUniqueWithoutServizioEwoInput>>? + upsert; + + final _i2.FornituraCreateManyServizioEwoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraWhereUniqueInput, + Iterable<_i2.FornituraWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.FornituraUpdateWithWhereUniqueWithoutServizioEwoInput, + Iterable<_i2.FornituraUpdateWithWhereUniqueWithoutServizioEwoInput>>? + update; + + final _i1.PrismaUnion<_i2.FornituraUpdateManyWithWhereWithoutServizioEwoInput, + Iterable<_i2.FornituraUpdateManyWithWhereWithoutServizioEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereInput, + Iterable<_i2.FornituraScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutTipiPraticheInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateWithoutTipiPraticheInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutTipiPraticheInput, + _i2.ServizioEwoUncheckedUpdateWithoutTipiPraticheInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutTipiPraticheInput, + _i2.ServizioEwoUncheckedUpdateWithoutTipiPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutTipiPraticheInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput({ + required this.where, + required this.data, + }); + + final _i2.ServizioEwoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateManyMutationInput, + _i2.ServizioEwoUncheckedUpdateManyWithoutTipiPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ServizioEwoUpdateManyWithoutTipiPraticheNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithoutTipiPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutTipiPraticheInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutTipiPraticheInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput, + Iterable< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput, + Iterable< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoPraticaUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateWithoutPraticheInput({ + this.id, + this.nome, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutTipiPraticheNestedInput? serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class ServizioEwoUncheckedUpdateManyWithoutTipiPraticheNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyWithoutTipiPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutTipiPraticheInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutTipiPraticheInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutTipiPraticheInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutTipiPraticheInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutTipiPraticheInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput, + Iterable< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutTipiPraticheInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput, + Iterable< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutTipiPraticheInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput, + Iterable<_i2.ServizioEwoUpdateManyWithWhereWithoutTipiPraticheInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoPraticaUncheckedUpdateWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateWithoutPraticheInput({ + this.id, + this.nome, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutTipiPraticheNestedInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + }; +} + +class TipoPraticaUpsertWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaUpsertWithoutPraticheInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaUpdateWithoutPraticheInput, + _i2.TipoPraticaUncheckedUpdateWithoutPraticheInput> update; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutPraticheInput, + _i2.TipoPraticaUncheckedCreateWithoutPraticheInput> create; + + final _i2.TipoPraticaWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class TipoPraticaUpdateToOneWithWhereWithoutPraticheInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateToOneWithWhereWithoutPraticheInput({ + this.where, + required this.data, + }); + + final _i2.TipoPraticaWhereInput? where; + + final _i1.PrismaUnion<_i2.TipoPraticaUpdateWithoutPraticheInput, + _i2.TipoPraticaUncheckedUpdateWithoutPraticheInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutPraticheInput, + _i2.TipoPraticaUncheckedCreateWithoutPraticheInput>? create; + + final _i2.TipoPraticaCreateOrConnectWithoutPraticheInput? connectOrCreate; + + final _i2.TipoPraticaUpsertWithoutPraticheInput? upsert; + + final _i2.TipoPraticaWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpdateToOneWithWhereWithoutPraticheInput, + _i1.PrismaUnion<_i2.TipoPraticaUpdateWithoutPraticheInput, + _i2.TipoPraticaUncheckedUpdateWithoutPraticheInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class PraticaUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutSoggettoInput, + _i2.PraticaUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutSoggettoInput, + _i2.PraticaUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class PraticaUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.PraticaUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.PraticaUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.PraticaCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.PraticaCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutSoggettoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutDomiciliInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutDomiciliInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutDomiciliInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutDomiciliInput, + _i2.SoggettoUncheckedUpdateWithoutDomiciliInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutDomiciliInput, + _i2.SoggettoUncheckedCreateWithoutDomiciliInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutDomiciliInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutDomiciliInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutDomiciliInput, + _i2.SoggettoUncheckedUpdateWithoutDomiciliInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneRequiredWithoutDomiciliNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneRequiredWithoutDomiciliNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutDomiciliInput, + _i2.SoggettoUncheckedCreateWithoutDomiciliInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutDomiciliInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutDomiciliInput? upsert; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutDomiciliInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutDomiciliInput, + _i2.SoggettoUncheckedUpdateWithoutDomiciliInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class DomicilioUpdateWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutFornitureInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedUpdateWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateWithoutFornitureInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUpsertWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithoutFornitureInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutFornitureInput, + _i2.DomicilioUncheckedUpdateWithoutFornitureInput> update; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutFornitureInput, + _i2.DomicilioUncheckedCreateWithoutFornitureInput> create; + + final _i2.DomicilioWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class DomicilioUpdateToOneWithWhereWithoutFornitureInput + implements _i1.JsonConvertible> { + const DomicilioUpdateToOneWithWhereWithoutFornitureInput({ + this.where, + required this.data, + }); + + final _i2.DomicilioWhereInput? where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutFornitureInput, + _i2.DomicilioUncheckedUpdateWithoutFornitureInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class DomicilioUpdateOneRequiredWithoutFornitureNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateOneRequiredWithoutFornitureNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutFornitureInput, + _i2.DomicilioUncheckedCreateWithoutFornitureInput>? create; + + final _i2.DomicilioCreateOrConnectWithoutFornitureInput? connectOrCreate; + + final _i2.DomicilioUpsertWithoutFornitureInput? upsert; + + final _i2.DomicilioWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.DomicilioUpdateToOneWithWhereWithoutFornitureInput, + _i1.PrismaUnion<_i2.DomicilioUpdateWithoutFornitureInput, + _i2.DomicilioUncheckedUpdateWithoutFornitureInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class FornituraUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraUpdateWithoutFornituraLuceInput({ + this.uuid, + this.etichetta, + this.domicilio, + this.servizioEwo, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.DomicilioUpdateOneRequiredWithoutFornitureNestedInput? domicilio; + + final _i2.ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput? + servizioEwo; + + final _i2.FornituraGasUpdateOneWithoutFornituraNestedInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUncheckedUpdateWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateWithoutFornituraLuceInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUpsertWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraUpsertWithoutFornituraLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraLuceInput, + _i2.FornituraUncheckedUpdateWithoutFornituraLuceInput> update; + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraLuceInput, + _i2.FornituraUncheckedCreateWithoutFornituraLuceInput> create; + + final _i2.FornituraWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraUpdateToOneWithWhereWithoutFornituraLuceInput + implements _i1.JsonConvertible> { + const FornituraUpdateToOneWithWhereWithoutFornituraLuceInput({ + this.where, + required this.data, + }); + + final _i2.FornituraWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraLuceInput, + _i2.FornituraUncheckedUpdateWithoutFornituraLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraUpdateOneRequiredWithoutFornituraLuceNestedInput + implements _i1.JsonConvertible> { + const FornituraUpdateOneRequiredWithoutFornituraLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraCreateWithoutFornituraLuceInput, + _i2.FornituraUncheckedCreateWithoutFornituraLuceInput>? create; + + final _i2.FornituraCreateOrConnectWithoutFornituraLuceInput? connectOrCreate; + + final _i2.FornituraUpsertWithoutFornituraLuceInput? upsert; + + final _i2.FornituraWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraUpdateToOneWithWhereWithoutFornituraLuceInput, + _i1.PrismaUnion<_i2.FornituraUpdateWithoutFornituraLuceInput, + _i2.FornituraUncheckedUpdateWithoutFornituraLuceInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class FornituraLuceUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraLuceNestedInput? + fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateWithoutContrattiEnelLuceInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + }; +} + +class FornituraLuceUpsertWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpsertWithoutContrattiEnelLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutContrattiEnelLuceInput> update; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput> create; + + final _i2.FornituraLuceWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraLuceUpdateToOneWithWhereWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateToOneWithWhereWithoutContrattiEnelLuceInput({ + this.where, + required this.data, + }); + + final _i2.FornituraLuceWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutContrattiEnelLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.FornituraLuceUpsertWithoutContrattiEnelLuceInput? upsert; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraLuceUpdateToOneWithWhereWithoutContrattiEnelLuceInput, + _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutContrattiEnelLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutContrattiEnelLuceInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelLuceUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithoutStatoInput({ + this.uuid, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + fornituraLuce; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelLuceNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutStatoInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelLuceUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutStatoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutStatoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.ContrattoEnelLuceCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoEnelLuceUpdateManyWithWhereWithoutStatoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutContrattiEnelGasInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedUpdateWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutContrattiEnelGasInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpsertWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithoutContrattiEnelGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelGasInput> update; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput> create; + + final _i2.StatoContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput({ + this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelGasInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelGasInput? + connectOrCreate; + + final _i2.StatoContrattoUpsertWithoutContrattiEnelGasInput? upsert; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelGasInput, + _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelGasInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelGasInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelGasUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateWithoutContrattoInput({ + this.uuid, + this.stato, + this.fornituraGas, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + stato; + + final _i2.FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + fornituraGas; + + final _i2.OffertaUpdateOneWithoutContrattiEnelGasNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasUpdateWithoutContrattoInput, + _i2.ContrattoEnelGasUncheckedUpdateWithoutContrattoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelGasUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelGasCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelGasUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelGasUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelGasCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelGasCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasWhereUniqueInput, + Iterable<_i2.ContrattoEnelGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelGasUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereInput, + Iterable<_i2.ContrattoEnelGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutSoggettoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutSoggettoInput, + _i2.ContrattoUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutSoggettoInput, + _i2.ContrattoUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.ContrattoCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutPraticheIntestateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutPraticheIntestateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutPraticheIntestateInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedUpdateWithoutPraticheIntestateInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedCreateWithoutPraticheIntestateInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutPraticheIntestateInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutPraticheIntestateInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedUpdateWithoutPraticheIntestateInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneWithoutPraticheIntestateNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneWithoutPraticheIntestateNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedCreateWithoutPraticheIntestateInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutPraticheIntestateInput? + connectOrCreate; + + final _i2.SoggettoUpsertWithoutPraticheIntestateInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutPraticheIntestateInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPraticheIntestateInput, + _i2.SoggettoUncheckedUpdateWithoutPraticheIntestateInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class PraticaUpdateWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUpdateWithoutTipoPraticaInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput + implements _i1.JsonConvertible> { + const PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.PraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithoutTipoPraticaInput, + _i2.PraticaUncheckedUpdateWithoutTipoPraticaInput> update; + + final _i1.PrismaUnion<_i2.PraticaCreateWithoutTipoPraticaInput, + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class PraticaUpdateManyWithoutTipoPraticaNestedInput + implements _i1.JsonConvertible> { + const PraticaUpdateManyWithoutTipoPraticaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.PraticaCreateWithoutTipoPraticaInput, + _i1.PrismaUnion< + Iterable<_i2.PraticaCreateWithoutTipoPraticaInput>, + _i1.PrismaUnion< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput, + Iterable< + _i2.PraticaUncheckedCreateWithoutTipoPraticaInput>>>>? create; + + final _i1.PrismaUnion<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput, + Iterable<_i2.PraticaCreateOrConnectWithoutTipoPraticaInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpsertWithWhereUniqueWithoutTipoPraticaInput>>? + upsert; + + final _i2.PraticaCreateManyTipoPraticaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.PraticaWhereUniqueInput, + Iterable<_i2.PraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpdateWithWhereUniqueWithoutTipoPraticaInput>>? + update; + + final _i1.PrismaUnion<_i2.PraticaUpdateManyWithWhereWithoutTipoPraticaInput, + Iterable<_i2.PraticaUpdateManyWithWhereWithoutTipoPraticaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereInput, + Iterable<_i2.PraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoPraticaUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutTipoPraticaNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + }; +} + +class TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.TipoPraticaWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.TipoPraticaUpdateWithoutServiziEwoInput, + _i2.TipoPraticaUncheckedUpdateWithoutServiziEwoInput> update; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateWithoutServiziEwoInput, + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class TipoPraticaUpdateManyWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateManyWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.TipoPraticaCreateWithoutServiziEwoInput, + _i1.PrismaUnion< + Iterable<_i2.TipoPraticaCreateWithoutServiziEwoInput>, + _i1.PrismaUnion< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput, + Iterable< + _i2.TipoPraticaUncheckedCreateWithoutServiziEwoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaCreateOrConnectWithoutServiziEwoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpsertWithWhereUniqueWithoutServiziEwoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.TipoPraticaWhereUniqueInput, + Iterable<_i2.TipoPraticaWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpdateWithWhereUniqueWithoutServiziEwoInput>>? + update; + + final _i1.PrismaUnion< + _i2.TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput, + Iterable<_i2.TipoPraticaUpdateManyWithWhereWithoutServiziEwoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereInput, + Iterable<_i2.TipoPraticaScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ServizioEwoUpdateWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutModuliContrattoInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + }; +} + +class ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ServizioEwoUpdateWithoutModuliContrattoInput, + _i2.ServizioEwoUncheckedUpdateWithoutModuliContrattoInput> update; + + final _i1.PrismaUnion<_i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ServizioEwoUpdateManyWithoutModuliContrattoNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithoutModuliContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutModuliContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ServizioEwoCreateWithoutModuliContrattoInput>, + _i1.PrismaUnion< + _i2.ServizioEwoUncheckedCreateWithoutModuliContrattoInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutModuliContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput, + Iterable<_i2.ServizioEwoCreateOrConnectWithoutModuliContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpsertWithWhereUniqueWithoutModuliContrattoInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpdateWithWhereUniqueWithoutModuliContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput, + Iterable< + _i2.ServizioEwoUpdateManyWithWhereWithoutModuliContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ModuloContrattoUpdateWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithoutFornitoreInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.serviziEwoCollegabili, + this.contratti, + this.tipoModulo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ServizioEwoUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUpdateManyWithoutModuloNestedInput? contratti; + + final _i2 + .TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput? + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutFornitoreInput, + _i2.ModuloContrattoUncheckedUpdateWithoutFornitoreInput> update; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutFornitoreInput, + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ModuloContrattoUpdateManyWithoutFornitoreNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithoutFornitoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutFornitoreInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutFornitoreInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutFornitoreInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutFornitoreInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutFornitoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutFornitoreInput>>? + upsert; + + final _i2.ModuloContrattoCreateManyFornitoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutFornitoreInput>>? + update; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput, + Iterable< + _i2.ModuloContrattoUpdateManyWithWhereWithoutFornitoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class FornitoreUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.moduliContratto, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ModuloContrattoUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + final _i2.ProdottoUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUncheckedUpdateWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedUpdateWithoutServiziEwoInput({ + this.id, + this.nome, + this.moduliContratto, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ModuloContrattoUncheckedUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + final _i2.ProdottoUncheckedUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUpsertWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreUpsertWithoutServiziEwoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutServiziEwoInput, + _i2.FornitoreUncheckedUpdateWithoutServiziEwoInput> update; + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutServiziEwoInput, + _i2.FornitoreUncheckedCreateWithoutServiziEwoInput> create; + + final _i2.FornitoreWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornitoreUpdateToOneWithWhereWithoutServiziEwoInput + implements _i1.JsonConvertible> { + const FornitoreUpdateToOneWithWhereWithoutServiziEwoInput({ + this.where, + required this.data, + }); + + final _i2.FornitoreWhereInput? where; + + final _i1.PrismaUnion<_i2.FornitoreUpdateWithoutServiziEwoInput, + _i2.FornitoreUncheckedUpdateWithoutServiziEwoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput + implements _i1.JsonConvertible> { + const FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornitoreCreateWithoutServiziEwoInput, + _i2.FornitoreUncheckedCreateWithoutServiziEwoInput>? create; + + final _i2.FornitoreCreateOrConnectWithoutServiziEwoInput? connectOrCreate; + + final _i2.FornitoreUpsertWithoutServiziEwoInput? upsert; + + final _i2.FornitoreWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornitoreUpdateToOneWithWhereWithoutServiziEwoInput, + _i1.PrismaUnion<_i2.FornitoreUpdateWithoutServiziEwoInput, + _i2.FornitoreUncheckedUpdateWithoutServiziEwoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ServizioEwoUpdateWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateWithoutStatiPossibiliContrattiInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput + implements _i1.JsonConvertible> { + const ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ServizioEwoWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateWithoutStatiPossibiliContrattiInput, + _i2.ServizioEwoUncheckedUpdateWithoutStatiPossibiliContrattiInput> update; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i2.ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput, + _i1.PrismaUnion< + Iterable< + _i2.ServizioEwoCreateWithoutStatiPossibiliContrattiInput>, + _i1.PrismaUnion< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUncheckedCreateWithoutStatiPossibiliContrattiInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoCreateOrConnectWithoutStatiPossibiliContrattiInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpsertWithWhereUniqueWithoutStatiPossibiliContrattiInput>>? + upsert; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ServizioEwoWhereUniqueInput, + Iterable<_i2.ServizioEwoWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpdateWithWhereUniqueWithoutStatiPossibiliContrattiInput>>? + update; + + final _i1.PrismaUnion< + _i2.ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput, + Iterable< + _i2 + .ServizioEwoUpdateManyWithWhereWithoutStatiPossibiliContrattiInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereInput, + Iterable<_i2.ServizioEwoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutContrattiEnelLuceInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedUpdateWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutContrattiEnelLuceInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUpsertWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithoutContrattiEnelLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelLuceInput> update; + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput> create; + + final _i2.StatoContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput({ + this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoCreateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedCreateWithoutContrattiEnelLuceInput>? create; + + final _i2.StatoContrattoCreateOrConnectWithoutContrattiEnelLuceInput? + connectOrCreate; + + final _i2.StatoContrattoUpsertWithoutContrattiEnelLuceInput? upsert; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelLuceInput, + _i1.PrismaUnion<_i2.StatoContrattoUpdateWithoutContrattiEnelLuceInput, + _i2.StatoContrattoUncheckedUpdateWithoutContrattiEnelLuceInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelLuceUpdateWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateWithoutContrattoInput({ + this.uuid, + this.stato, + this.fornituraLuce, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + stato; + + final _i2.FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + fornituraLuce; + + final _i2.OffertaUpdateOneWithoutContrattiEnelLuceNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceUpdateWithoutContrattoInput, + _i2.ContrattoEnelLuceUncheckedUpdateWithoutContrattoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateWithoutContrattoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoEnelLuceCreateWithoutContrattoInput>, + _i1.PrismaUnion< + _i2.ContrattoEnelLuceUncheckedCreateWithoutContrattoInput, + Iterable< + _i2 + .ContrattoEnelLuceUncheckedCreateWithoutContrattoInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput, + Iterable<_i2.ContrattoEnelLuceCreateOrConnectWithoutContrattoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpsertWithWhereUniqueWithoutContrattoInput>>? + upsert; + + final _i2.ContrattoEnelLuceCreateManyContrattoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceWhereUniqueInput, + Iterable<_i2.ContrattoEnelLuceWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateWithWhereUniqueWithoutContrattoInput>>? + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput, + Iterable< + _i2.ContrattoEnelLuceUpdateManyWithWhereWithoutContrattoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ContrattoUpdateWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUpdateWithoutStatoInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUpsertWithWhereUniqueWithoutStatoInput + implements _i1.JsonConvertible> { + const ContrattoUpsertWithWhereUniqueWithoutStatoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithoutStatoInput, + _i2.ContrattoUncheckedUpdateWithoutStatoInput> update; + + final _i1.PrismaUnion<_i2.ContrattoCreateWithoutStatoInput, + _i2.ContrattoUncheckedCreateWithoutStatoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoUpdateManyWithoutStatoNestedInput + implements _i1.JsonConvertible> { + const ContrattoUpdateManyWithoutStatoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ContrattoCreateWithoutStatoInput, + _i1.PrismaUnion< + Iterable<_i2.ContrattoCreateWithoutStatoInput>, + _i1.PrismaUnion<_i2.ContrattoUncheckedCreateWithoutStatoInput, + Iterable<_i2.ContrattoUncheckedCreateWithoutStatoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ContrattoCreateOrConnectWithoutStatoInput, + Iterable<_i2.ContrattoCreateOrConnectWithoutStatoInput>>? connectOrCreate; + + final _i1.PrismaUnion<_i2.ContrattoUpsertWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoUpsertWithWhereUniqueWithoutStatoInput>>? upsert; + + final _i2.ContrattoCreateManyStatoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoWhereUniqueInput, + Iterable<_i2.ContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ContrattoUpdateWithWhereUniqueWithoutStatoInput, + Iterable<_i2.ContrattoUpdateWithWhereUniqueWithoutStatoInput>>? update; + + final _i1.PrismaUnion<_i2.ContrattoUpdateManyWithWhereWithoutStatoInput, + Iterable<_i2.ContrattoUpdateManyWithWhereWithoutStatoInput>>? updateMany; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereInput, + Iterable<_i2.ContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoContrattoUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class StatoContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + }; +} + +class StatoContrattoUpsertWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoUpsertWithoutContrattiEnelXAssicurazioneInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> + update; + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput> + create; + + final _i2.StatoContrattoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput({ + this.where, + required this.data, + }); + + final _i2.StatoContrattoWhereInput? where; + + final _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput> + data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.StatoContrattoCreateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedCreateWithoutContrattiEnelXAssicurazioneInput>? + create; + + final _i2 + .StatoContrattoCreateOrConnectWithoutContrattiEnelXAssicurazioneInput? + connectOrCreate; + + final _i2.StatoContrattoUpsertWithoutContrattiEnelXAssicurazioneInput? upsert; + + final _i2.StatoContrattoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2 + .StatoContrattoUpdateToOneWithWhereWithoutContrattiEnelXAssicurazioneInput, + _i1.PrismaUnion< + _i2.StatoContrattoUpdateWithoutContrattiEnelXAssicurazioneInput, + _i2 + .StatoContrattoUncheckedUpdateWithoutContrattiEnelXAssicurazioneInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ContrattoEnelXAssicurazioneUpdateWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateWithoutDomicilioInput({ + this.uuid, + this.stato, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2 + .StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + stato; + + final _i2 + .ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ContrattoEnelXAssicurazioneWhereUniqueInput where; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneUpdateWithoutDomicilioInput, + _i2.ContrattoEnelXAssicurazioneUncheckedUpdateWithoutDomicilioInput> + update; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i2.ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput> + create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1 + .PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput, + _i1.PrismaUnion< + Iterable< + _i2.ContrattoEnelXAssicurazioneCreateWithoutDomicilioInput>, + _i1.PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateWithoutDomicilioInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneCreateOrConnectWithoutDomicilioInput>>? + connectOrCreate; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpsertWithWhereUniqueWithoutDomicilioInput>>? + upsert; + + final _i2.ContrattoEnelXAssicurazioneCreateManyDomicilioInputEnvelope? + createMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput, + Iterable<_i2.ContrattoEnelXAssicurazioneWhereUniqueInput>>? connect; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateWithWhereUniqueWithoutDomicilioInput>>? + update; + + final _i1 + .PrismaUnion< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput, + Iterable< + _i2 + .ContrattoEnelXAssicurazioneUpdateManyWithWhereWithoutDomicilioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ContrattoEnelXAssicurazioneScalarWhereInput, + Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class DomicilioUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUpdateWithoutSoggettoInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUpsertWithWhereUniqueWithoutSoggettoInput + implements _i1.JsonConvertible> { + const DomicilioUpsertWithWhereUniqueWithoutSoggettoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.DomicilioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithoutSoggettoInput, + _i2.DomicilioUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.DomicilioCreateWithoutSoggettoInput, + _i2.DomicilioUncheckedCreateWithoutSoggettoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class DomicilioUpdateManyWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const DomicilioUpdateManyWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.DomicilioCreateWithoutSoggettoInput, + _i1.PrismaUnion< + Iterable<_i2.DomicilioCreateWithoutSoggettoInput>, + _i1.PrismaUnion<_i2.DomicilioUncheckedCreateWithoutSoggettoInput, + Iterable<_i2.DomicilioUncheckedCreateWithoutSoggettoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.DomicilioCreateOrConnectWithoutSoggettoInput, + Iterable<_i2.DomicilioCreateOrConnectWithoutSoggettoInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.DomicilioUpsertWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.DomicilioUpsertWithWhereUniqueWithoutSoggettoInput>>? upsert; + + final _i2.DomicilioCreateManySoggettoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.DomicilioWhereUniqueInput, + Iterable<_i2.DomicilioWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.DomicilioUpdateWithWhereUniqueWithoutSoggettoInput, + Iterable<_i2.DomicilioUpdateWithWhereUniqueWithoutSoggettoInput>>? update; + + final _i1.PrismaUnion<_i2.DomicilioUpdateManyWithWhereWithoutSoggettoInput, + Iterable<_i2.DomicilioUpdateManyWithWhereWithoutSoggettoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereInput, + Iterable<_i2.DomicilioScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class SoggettoUpdateWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutNumeriTelefonoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutNumeriTelefonoInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUpsertWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutNumeriTelefonoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedUpdateWithoutNumeriTelefonoInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedCreateWithoutNumeriTelefonoInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutNumeriTelefonoInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutNumeriTelefonoInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedUpdateWithoutNumeriTelefonoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneWithoutNumeriTelefonoNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneWithoutNumeriTelefonoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedCreateWithoutNumeriTelefonoInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutNumeriTelefonoInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutNumeriTelefonoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutNumeriTelefonoInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutNumeriTelefonoInput, + _i2.SoggettoUncheckedUpdateWithoutNumeriTelefonoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class NumeroTelefonoUpdateWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateWithoutLegaleRappresentateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggetto, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutNumeriTelefonoNestedInput? soggetto; + + final _i2.ReferenteUpdateOneWithoutNumeroTelefonoNestedInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + }; +} + +class NumeroTelefonoUpsertWithoutLegaleRappresentateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpsertWithoutLegaleRappresentateInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoUpdateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput> update; + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput> create; + + final _i2.NumeroTelefonoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class NumeroTelefonoUpdateOneWithoutLegaleRappresentateNestedInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateOneWithoutLegaleRappresentateNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoCreateWithoutLegaleRappresentateInput, + _i2.NumeroTelefonoUncheckedCreateWithoutLegaleRappresentateInput>? create; + + final _i2.NumeroTelefonoCreateOrConnectWithoutLegaleRappresentateInput? + connectOrCreate; + + final _i2.NumeroTelefonoUpsertWithoutLegaleRappresentateInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.NumeroTelefonoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateToOneWithWhereWithoutLegaleRappresentateInput, + _i1.PrismaUnion< + _i2.NumeroTelefonoUpdateWithoutLegaleRappresentateInput, + _i2 + .NumeroTelefonoUncheckedUpdateWithoutLegaleRappresentateInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + final _i2.IndirizzoEmailUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteUpsertWithoutSoggettoBusinessInfoInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpsertWithoutSoggettoBusinessInfoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput> + update; + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput> + create; + + final _i2.LegaleRappresentanteWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class LegaleRappresentanteUpdateOneWithoutSoggettoBusinessInfoNestedInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateOneWithoutSoggettoBusinessInfoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion< + _i2.LegaleRappresentanteCreateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedCreateWithoutSoggettoBusinessInfoInput>? + create; + + final _i2.LegaleRappresentanteCreateOrConnectWithoutSoggettoBusinessInfoInput? + connectOrCreate; + + final _i2.LegaleRappresentanteUpsertWithoutSoggettoBusinessInfoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.LegaleRappresentanteWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2 + .LegaleRappresentanteUpdateToOneWithWhereWithoutSoggettoBusinessInfoInput, + _i1.PrismaUnion< + _i2.LegaleRappresentanteUpdateWithoutSoggettoBusinessInfoInput, + _i2 + .LegaleRappresentanteUncheckedUpdateWithoutSoggettoBusinessInfoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoBusinessInfoUpdateWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateWithoutSoggettoInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i2.LegaleRappresentanteUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + final _i2.ReferenteUpdateOneWithoutSoggettoBusinessInfoNestedInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoUpsertWithoutSoggettoInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpsertWithoutSoggettoInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput> update; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput> create; + + final _i2.SoggettoBusinessInfoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoCreateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedCreateWithoutSoggettoInput>? create; + + final _i2.SoggettoBusinessInfoCreateOrConnectWithoutSoggettoInput? + connectOrCreate; + + final _i2.SoggettoBusinessInfoUpsertWithoutSoggettoInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoBusinessInfoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoBusinessInfoUpdateToOneWithWhereWithoutSoggettoInput, + _i1.PrismaUnion<_i2.SoggettoBusinessInfoUpdateWithoutSoggettoInput, + _i2.SoggettoBusinessInfoUncheckedUpdateWithoutSoggettoInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class SoggettoUpdateInput implements _i1.JsonConvertible> { + const SoggettoUpdateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + this.privacy, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + final _i2.PrivacyUncheckedUpdateOneWithoutSoggettoNestedInput? privacy; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + 'privacy': privacy, + }; +} + +class SoggettoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateManyInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoCountAggregateOutputType { + const SoggettoCountAggregateOutputType({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.$all, + }); + + factory SoggettoCountAggregateOutputType.fromJson(Map json) => + SoggettoCountAggregateOutputType( + uuid: json['uuid'], + ragioneSociale: json['ragioneSociale'], + iban: json['iban'], + tipo: json['tipo'], + negozioPreferitoUuid: json['negozioPreferitoUuid'], + codiceFiscale: json['codiceFiscale'], + note: json['note'], + $all: json['_all'], + ); + + final int? uuid; + + final int? ragioneSociale; + + final int? iban; + + final int? tipo; + + final int? negozioPreferitoUuid; + + final int? codiceFiscale; + + final int? note; + + final int? $all; +} + +class SoggettoMinAggregateOutputType { + const SoggettoMinAggregateOutputType({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + factory SoggettoMinAggregateOutputType.fromJson(Map json) => + SoggettoMinAggregateOutputType( + uuid: json['uuid'], + ragioneSociale: json['ragioneSociale'], + iban: json['iban'], + tipo: json['tipo'] != null + ? _i3.TipoSoggetto.values.firstWhere((e) => e.name == json['tipo']) + : null, + negozioPreferitoUuid: json['negozioPreferitoUuid'], + codiceFiscale: json['codiceFiscale'], + note: json['note'], + ); + + final String? uuid; + + final String? ragioneSociale; + + final String? iban; + + final _i3.TipoSoggetto? tipo; + + final String? negozioPreferitoUuid; + + final String? codiceFiscale; + + final String? note; +} + +class SoggettoMaxAggregateOutputType { + const SoggettoMaxAggregateOutputType({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + factory SoggettoMaxAggregateOutputType.fromJson(Map json) => + SoggettoMaxAggregateOutputType( + uuid: json['uuid'], + ragioneSociale: json['ragioneSociale'], + iban: json['iban'], + tipo: json['tipo'] != null + ? _i3.TipoSoggetto.values.firstWhere((e) => e.name == json['tipo']) + : null, + negozioPreferitoUuid: json['negozioPreferitoUuid'], + codiceFiscale: json['codiceFiscale'], + note: json['note'], + ); + + final String? uuid; + + final String? ragioneSociale; + + final String? iban; + + final _i3.TipoSoggetto? tipo; + + final String? negozioPreferitoUuid; + + final String? codiceFiscale; + + final String? note; +} + +class SoggettoGroupByOutputType { + const SoggettoGroupByOutputType({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.$count, + this.$min, + this.$max, + }); + + factory SoggettoGroupByOutputType.fromJson(Map json) => + SoggettoGroupByOutputType( + uuid: json['uuid'], + ragioneSociale: json['ragioneSociale'], + iban: json['iban'], + tipo: json['tipo'] != null + ? _i3.TipoSoggetto.values.firstWhere((e) => e.name == json['tipo']) + : null, + negozioPreferitoUuid: json['negozioPreferitoUuid'], + codiceFiscale: json['codiceFiscale'], + note: json['note'], + $count: json['_count'] is Map + ? _i2.SoggettoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.SoggettoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.SoggettoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? ragioneSociale; + + final String? iban; + + final _i3.TipoSoggetto? tipo; + + final String? negozioPreferitoUuid; + + final String? codiceFiscale; + + final String? note; + + final _i2.SoggettoCountAggregateOutputType? $count; + + final _i2.SoggettoMinAggregateOutputType? $min; + + final _i2.SoggettoMaxAggregateOutputType? $max; +} + +class SoggettoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoCountOrderByAggregateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? ragioneSociale; + + final _i2.SortOrder? iban; + + final _i2.SortOrder? tipo; + + final _i2.SortOrder? negozioPreferitoUuid; + + final _i2.SortOrder? codiceFiscale; + + final _i2.SortOrder? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoMaxOrderByAggregateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? ragioneSociale; + + final _i2.SortOrder? iban; + + final _i2.SortOrder? tipo; + + final _i2.SortOrder? negozioPreferitoUuid; + + final _i2.SortOrder? codiceFiscale; + + final _i2.SortOrder? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoMinOrderByAggregateInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? ragioneSociale; + + final _i2.SortOrder? iban; + + final _i2.SortOrder? tipo; + + final _i2.SortOrder? negozioPreferitoUuid; + + final _i2.SortOrder? codiceFiscale; + + final _i2.SortOrder? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const SoggettoOrderByWithAggregationInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? ragioneSociale; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? iban; + + final _i2.SortOrder? tipo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? codiceFiscale; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? note; + + final _i2.SoggettoCountOrderByAggregateInput? $count; + + final _i2.SoggettoMaxOrderByAggregateInput? $max; + + final _i2.SoggettoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedStringWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedStringWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedStringFilter? $min; + + final _i2.NestedStringFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class StringWithAggregatesFilter + implements _i1.JsonConvertible> { + const StringWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedStringFilter? $min; + + final _i2.NestedStringFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedStringNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedStringNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NestedStringNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedStringNullableFilter? $min; + + final _i2.NestedStringNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class StringNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const StringNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.contains, + this.startsWith, + this.endsWith, + this.search, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion>? contains; + + final _i1.PrismaUnion>? startsWith; + + final _i1.PrismaUnion>? endsWith; + + final String? search; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NestedStringNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedStringNullableFilter? $min; + + final _i2.NestedStringNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'contains': contains, + 'startsWith': startsWith, + 'endsWith': endsWith, + 'search': search, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedEnumTipoSoggettoWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoSoggettoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i1.Reference<_i3.TipoSoggetto>>? + equals; + + final Iterable<_i3.TipoSoggetto>? $in; + + final Iterable<_i3.TipoSoggetto>? notIn; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.NestedEnumTipoSoggettoWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoSoggettoFilter? $min; + + final _i2.NestedEnumTipoSoggettoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTipoSoggettoWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTipoSoggettoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoSoggetto, _i1.Reference<_i3.TipoSoggetto>>? + equals; + + final Iterable<_i3.TipoSoggetto>? $in; + + final Iterable<_i3.TipoSoggetto>? notIn; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.NestedEnumTipoSoggettoWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoSoggettoFilter? $min; + + final _i2.NestedEnumTipoSoggettoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class SoggettoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const SoggettoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereWithAggregatesInput, + Iterable<_i2.SoggettoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.SoggettoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.SoggettoScalarWhereWithAggregatesInput, + Iterable<_i2.SoggettoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? ragioneSociale; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? iban; + + final _i1 + .PrismaUnion<_i2.EnumTipoSoggettoWithAggregatesFilter, _i3.TipoSoggetto>? + tipo; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioPreferitoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? codiceFiscale; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? note; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoCountAggregateOutputTypeSelect({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.$all, + }); + + final bool? uuid; + + final bool? ragioneSociale; + + final bool? iban; + + final bool? tipo; + + final bool? negozioPreferitoUuid; + + final bool? codiceFiscale; + + final bool? note; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + '_all': $all, + }; +} + +class SoggettoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const SoggettoGroupByOutputTypeCountArgs({this.select}); + + final _i2.SoggettoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoMinAggregateOutputTypeSelect({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final bool? uuid; + + final bool? ragioneSociale; + + final bool? iban; + + final bool? tipo; + + final bool? negozioPreferitoUuid; + + final bool? codiceFiscale; + + final bool? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const SoggettoGroupByOutputTypeMinArgs({this.select}); + + final _i2.SoggettoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoMaxAggregateOutputTypeSelect({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + }); + + final bool? uuid; + + final bool? ragioneSociale; + + final bool? iban; + + final bool? tipo; + + final bool? negozioPreferitoUuid; + + final bool? codiceFiscale; + + final bool? note; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + }; +} + +class SoggettoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const SoggettoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.SoggettoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoGroupByOutputTypeSelect({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? ragioneSociale; + + final bool? iban; + + final bool? tipo; + + final bool? negozioPreferitoUuid; + + final bool? codiceFiscale; + + final bool? note; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateSoggetto { + const AggregateSoggetto({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateSoggetto.fromJson(Map json) => AggregateSoggetto( + $count: json['_count'] is Map + ? _i2.SoggettoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.SoggettoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.SoggettoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.SoggettoCountAggregateOutputType? $count; + + final _i2.SoggettoMinAggregateOutputType? $min; + + final _i2.SoggettoMaxAggregateOutputType? $max; +} + +class AggregateSoggettoCountArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoCountArgs({this.select}); + + final _i2.SoggettoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoMinArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoMinArgs({this.select}); + + final _i2.SoggettoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoMaxArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoMaxArgs({this.select}); + + final _i2.SoggettoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoSelect + implements _i1.JsonConvertible> { + const AggregateSoggettoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum PrivacyScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Privacy'), + trattamento('trattamento', 'Privacy'), + comunicazione('comunicazione', 'Privacy'), + profilazione('profilazione', 'Privacy'), + soggettoUuid('soggettoUuid', 'Privacy'); + + const PrivacyScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class SoggettoCreateWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoCreateWithoutPrivacyInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaCreateNestedManyWithoutSoggettoInput? praticheIntestate; + + final _i2.ContrattoCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailCreateNestedManyWithoutSoggettoInput? indirizziEmail; + + final _i2.NumeroTelefonoCreateNestedManyWithoutSoggettoInput? numeriTelefono; + + final _i2.NegozioCreateNestedOneWithoutSoggettiInput? negozioPreferito; + + final _i2.OrdineCreateNestedManyWithoutSoggettoInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutSoggettoInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class SoggettoUncheckedCreateWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedCreateWithoutPrivacyInput({ + this.uuid, + required this.ragioneSociale, + this.iban, + required this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final String ragioneSociale; + + final _i1.PrismaUnion? iban; + + final _i3.TipoSoggetto tipo; + + final _i1.PrismaUnion? negozioPreferitoUuid; + + final _i1.PrismaUnion? codiceFiscale; + + final _i1.PrismaUnion? note; + + final _i2.SoggettoBusinessInfoUncheckedCreateNestedOneWithoutSoggettoInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedCreateNestedManyWithoutSoggettoInput? domicili; + + final _i2.PraticaUncheckedCreateNestedManyWithoutSoggettoInput? + praticheIntestate; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutSoggettoInput? contratti; + + final _i2.IndirizzoEmailUncheckedCreateNestedManyWithoutSoggettoInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedCreateNestedManyWithoutSoggettoInput? + numeriTelefono; + + final _i2.OrdineUncheckedCreateNestedManyWithoutSoggettoInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutSoggettoInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class SoggettoCreateOrConnectWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoCreateOrConnectWithoutPrivacyInput({ + required this.where, + required this.create, + }); + + final _i2.SoggettoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPrivacyInput, + _i2.SoggettoUncheckedCreateWithoutPrivacyInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class SoggettoCreateNestedOneWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoCreateNestedOneWithoutPrivacyInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPrivacyInput, + _i2.SoggettoUncheckedCreateWithoutPrivacyInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutPrivacyInput? connectOrCreate; + + final _i2.SoggettoWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class PrivacyCreateInput implements _i1.JsonConvertible> { + const PrivacyCreateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggetto, + }); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final _i2.SoggettoCreateNestedOneWithoutPrivacyInput? soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggetto': soggetto, + }; +} + +class PrivacyUncheckedCreateInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedCreateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final _i1.PrismaUnion? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyCreateManyInput + implements _i1.JsonConvertible> { + const PrivacyCreateManyInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final _i1.PrismaUnion? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoUpdateWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoUpdateWithoutPrivacyInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.negozioPreferito, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUpdateManyWithoutSoggettoNestedInput? praticheIntestate; + + final _i2.ContrattoUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUpdateManyWithoutSoggettoNestedInput? indirizziEmail; + + final _i2.NumeroTelefonoUpdateManyWithoutSoggettoNestedInput? numeriTelefono; + + final _i2.NegozioUpdateOneWithoutSoggettiNestedInput? negozioPreferito; + + final _i2.OrdineUpdateManyWithoutSoggettoNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutSoggettoNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'negozioPreferito': negozioPreferito, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class SoggettoUncheckedUpdateWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoUncheckedUpdateWithoutPrivacyInput({ + this.uuid, + this.ragioneSociale, + this.iban, + this.tipo, + this.negozioPreferitoUuid, + this.codiceFiscale, + this.note, + this.soggettoBusinessInfo, + this.domicili, + this.praticheIntestate, + this.contratti, + this.indirizziEmail, + this.numeriTelefono, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + ragioneSociale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? iban; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? tipo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioPreferitoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? codiceFiscale; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? note; + + final _i2.SoggettoBusinessInfoUncheckedUpdateOneWithoutSoggettoNestedInput? + soggettoBusinessInfo; + + final _i2.DomicilioUncheckedUpdateManyWithoutSoggettoNestedInput? domicili; + + final _i2.PraticaUncheckedUpdateManyWithoutSoggettoNestedInput? + praticheIntestate; + + final _i2.ContrattoUncheckedUpdateManyWithoutSoggettoNestedInput? contratti; + + final _i2.IndirizzoEmailUncheckedUpdateManyWithoutSoggettoNestedInput? + indirizziEmail; + + final _i2.NumeroTelefonoUncheckedUpdateManyWithoutSoggettoNestedInput? + numeriTelefono; + + final _i2.OrdineUncheckedUpdateManyWithoutSoggettoNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutSoggettoNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'ragioneSociale': ragioneSociale, + 'iban': iban, + 'tipo': tipo, + 'negozioPreferitoUuid': negozioPreferitoUuid, + 'codiceFiscale': codiceFiscale, + 'note': note, + 'soggettoBusinessInfo': soggettoBusinessInfo, + 'domicili': domicili, + 'praticheIntestate': praticheIntestate, + 'contratti': contratti, + 'indirizziEmail': indirizziEmail, + 'numeriTelefono': numeriTelefono, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class SoggettoUpsertWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoUpsertWithoutPrivacyInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPrivacyInput, + _i2.SoggettoUncheckedUpdateWithoutPrivacyInput> update; + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPrivacyInput, + _i2.SoggettoUncheckedCreateWithoutPrivacyInput> create; + + final _i2.SoggettoWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class SoggettoUpdateToOneWithWhereWithoutPrivacyInput + implements _i1.JsonConvertible> { + const SoggettoUpdateToOneWithWhereWithoutPrivacyInput({ + this.where, + required this.data, + }); + + final _i2.SoggettoWhereInput? where; + + final _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPrivacyInput, + _i2.SoggettoUncheckedUpdateWithoutPrivacyInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class SoggettoUpdateOneWithoutPrivacyNestedInput + implements _i1.JsonConvertible> { + const SoggettoUpdateOneWithoutPrivacyNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.disconnect, + this.delete, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.SoggettoCreateWithoutPrivacyInput, + _i2.SoggettoUncheckedCreateWithoutPrivacyInput>? create; + + final _i2.SoggettoCreateOrConnectWithoutPrivacyInput? connectOrCreate; + + final _i2.SoggettoUpsertWithoutPrivacyInput? upsert; + + final _i1.PrismaUnion? disconnect; + + final _i1.PrismaUnion? delete; + + final _i2.SoggettoWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.SoggettoUpdateToOneWithWhereWithoutPrivacyInput, + _i1.PrismaUnion<_i2.SoggettoUpdateWithoutPrivacyInput, + _i2.SoggettoUncheckedUpdateWithoutPrivacyInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + }; +} + +class PrivacyUpdateInput implements _i1.JsonConvertible> { + const PrivacyUpdateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggetto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + final _i2.SoggettoUpdateOneWithoutPrivacyNestedInput? soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggetto': soggetto, + }; +} + +class PrivacyUncheckedUpdateInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedUpdateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyUpdateManyMutationInput + implements _i1.JsonConvertible> { + const PrivacyUpdateManyMutationInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + }; +} + +class PrivacyUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const PrivacyUncheckedUpdateManyInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? trattamento; + + final _i1.PrismaUnion? + comunicazione; + + final _i1.PrismaUnion? profilazione; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyCountAggregateOutputType { + const PrivacyCountAggregateOutputType({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.$all, + }); + + factory PrivacyCountAggregateOutputType.fromJson(Map json) => + PrivacyCountAggregateOutputType( + uuid: json['uuid'], + trattamento: json['trattamento'], + comunicazione: json['comunicazione'], + profilazione: json['profilazione'], + soggettoUuid: json['soggettoUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? trattamento; + + final int? comunicazione; + + final int? profilazione; + + final int? soggettoUuid; + + final int? $all; +} + +class PrivacyMinAggregateOutputType { + const PrivacyMinAggregateOutputType({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + factory PrivacyMinAggregateOutputType.fromJson(Map json) => + PrivacyMinAggregateOutputType( + uuid: json['uuid'], + trattamento: json['trattamento'], + comunicazione: json['comunicazione'], + profilazione: json['profilazione'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final String? soggettoUuid; +} + +class PrivacyMaxAggregateOutputType { + const PrivacyMaxAggregateOutputType({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + factory PrivacyMaxAggregateOutputType.fromJson(Map json) => + PrivacyMaxAggregateOutputType( + uuid: json['uuid'], + trattamento: json['trattamento'], + comunicazione: json['comunicazione'], + profilazione: json['profilazione'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final String? soggettoUuid; +} + +class PrivacyGroupByOutputType { + const PrivacyGroupByOutputType({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + factory PrivacyGroupByOutputType.fromJson(Map json) => + PrivacyGroupByOutputType( + uuid: json['uuid'], + trattamento: json['trattamento'], + comunicazione: json['comunicazione'], + profilazione: json['profilazione'], + soggettoUuid: json['soggettoUuid'], + $count: json['_count'] is Map + ? _i2.PrivacyCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.PrivacyMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.PrivacyMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final String? soggettoUuid; + + final _i2.PrivacyCountAggregateOutputType? $count; + + final _i2.PrivacyMinAggregateOutputType? $min; + + final _i2.PrivacyMaxAggregateOutputType? $max; +} + +class PrivacyCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const PrivacyCountOrderByAggregateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? trattamento; + + final _i2.SortOrder? comunicazione; + + final _i2.SortOrder? profilazione; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const PrivacyMaxOrderByAggregateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? trattamento; + + final _i2.SortOrder? comunicazione; + + final _i2.SortOrder? profilazione; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const PrivacyMinOrderByAggregateInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? trattamento; + + final _i2.SortOrder? comunicazione; + + final _i2.SortOrder? profilazione; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const PrivacyOrderByWithAggregationInput({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? trattamento; + + final _i2.SortOrder? comunicazione; + + final _i2.SortOrder? profilazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i2.PrivacyCountOrderByAggregateInput? $count; + + final _i2.PrivacyMaxOrderByAggregateInput? $max; + + final _i2.PrivacyMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedBoolWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedBoolWithAggregatesFilter({ + this.equals, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedBoolFilter? $min; + + final _i2.NestedBoolFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class BoolWithAggregatesFilter + implements _i1.JsonConvertible> { + const BoolWithAggregatesFilter({ + this.equals, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedBoolFilter? $min; + + final _i2.NestedBoolFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class PrivacyScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const PrivacyScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final _i1.PrismaUnion<_i2.PrivacyScalarWhereWithAggregatesInput, + Iterable<_i2.PrivacyScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.PrivacyScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.PrivacyScalarWhereWithAggregatesInput, + Iterable<_i2.PrivacyScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? trattamento; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? comunicazione; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? profilazione; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? soggettoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PrivacyCountAggregateOutputTypeSelect({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.$all, + }); + + final bool? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final bool? soggettoUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + '_all': $all, + }; +} + +class PrivacyGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const PrivacyGroupByOutputTypeCountArgs({this.select}); + + final _i2.PrivacyCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PrivacyMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PrivacyMinAggregateOutputTypeSelect({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const PrivacyGroupByOutputTypeMinArgs({this.select}); + + final _i2.PrivacyMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PrivacyMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PrivacyMaxAggregateOutputTypeSelect({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + }; +} + +class PrivacyGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const PrivacyGroupByOutputTypeMaxArgs({this.select}); + + final _i2.PrivacyMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PrivacyGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const PrivacyGroupByOutputTypeSelect({ + this.uuid, + this.trattamento, + this.comunicazione, + this.profilazione, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? trattamento; + + final bool? comunicazione; + + final bool? profilazione; + + final bool? soggettoUuid; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'trattamento': trattamento, + 'comunicazione': comunicazione, + 'profilazione': profilazione, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregatePrivacy { + const AggregatePrivacy({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregatePrivacy.fromJson(Map json) => AggregatePrivacy( + $count: json['_count'] is Map + ? _i2.PrivacyCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.PrivacyMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.PrivacyMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.PrivacyCountAggregateOutputType? $count; + + final _i2.PrivacyMinAggregateOutputType? $min; + + final _i2.PrivacyMaxAggregateOutputType? $max; +} + +class AggregatePrivacyCountArgs + implements _i1.JsonConvertible> { + const AggregatePrivacyCountArgs({this.select}); + + final _i2.PrivacyCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePrivacyMinArgs + implements _i1.JsonConvertible> { + const AggregatePrivacyMinArgs({this.select}); + + final _i2.PrivacyMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePrivacyMaxArgs + implements _i1.JsonConvertible> { + const AggregatePrivacyMaxArgs({this.select}); + + final _i2.PrivacyMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePrivacySelect + implements _i1.JsonConvertible> { + const AggregatePrivacySelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum SoggettoBusinessInfoScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'SoggettoBusinessInfo'), + rea('rea', 'SoggettoBusinessInfo'), + partitaIVA('partitaIVA', 'SoggettoBusinessInfo'), + sdi('sdi', 'SoggettoBusinessInfo'), + soggettoUuid('soggettoUuid', 'SoggettoBusinessInfo'); + + const SoggettoBusinessInfoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class SoggettoBusinessInfoCreateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + required this.soggetto, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + final _i2.ReferenteCreateNestedOneWithoutSoggettoBusinessInfoInput? referente; + + final _i2.SoggettoCreateNestedOneWithoutSoggettoBusinessInfoInput soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedCreateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedCreateInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + required this.soggettoUuid, + this.legaleRappresentante, + this.referente, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final String soggettoUuid; + + final _i2 + .LegaleRappresentanteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + legaleRappresentante; + + final _i2.ReferenteUncheckedCreateNestedOneWithoutSoggettoBusinessInfoInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoCreateManyInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCreateManyInput({ + this.uuid, + this.rea, + required this.partitaIVA, + this.sdi, + required this.soggettoUuid, + }); + + final String? uuid; + + final _i1.PrismaUnion? rea; + + final String partitaIVA; + + final _i1.PrismaUnion? sdi; + + final String soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoUpdateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.legaleRappresentante, + this.referente, + this.soggetto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i2.LegaleRappresentanteUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + final _i2.ReferenteUpdateOneWithoutSoggettoBusinessInfoNestedInput? referente; + + final _i2.SoggettoUpdateOneRequiredWithoutSoggettoBusinessInfoNestedInput? + soggetto; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + 'soggetto': soggetto, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.legaleRappresentante, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .LegaleRappresentanteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + legaleRappresentante; + + final _i2.ReferenteUncheckedUpdateOneWithoutSoggettoBusinessInfoNestedInput? + referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentante': legaleRappresentante, + 'referente': referente, + }; +} + +class SoggettoBusinessInfoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUpdateManyMutationInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + }; +} + +class SoggettoBusinessInfoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoUncheckedUpdateManyInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? rea; + + final _i1.PrismaUnion? + partitaIVA; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? sdi; + + final _i1.PrismaUnion? + soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoCountAggregateOutputType { + const SoggettoBusinessInfoCountAggregateOutputType({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.$all, + }); + + factory SoggettoBusinessInfoCountAggregateOutputType.fromJson(Map json) => + SoggettoBusinessInfoCountAggregateOutputType( + uuid: json['uuid'], + rea: json['rea'], + partitaIVA: json['partitaIVA'], + sdi: json['sdi'], + soggettoUuid: json['soggettoUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? rea; + + final int? partitaIVA; + + final int? sdi; + + final int? soggettoUuid; + + final int? $all; +} + +class SoggettoBusinessInfoMinAggregateOutputType { + const SoggettoBusinessInfoMinAggregateOutputType({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + factory SoggettoBusinessInfoMinAggregateOutputType.fromJson(Map json) => + SoggettoBusinessInfoMinAggregateOutputType( + uuid: json['uuid'], + rea: json['rea'], + partitaIVA: json['partitaIVA'], + sdi: json['sdi'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final String? rea; + + final String? partitaIVA; + + final String? sdi; + + final String? soggettoUuid; +} + +class SoggettoBusinessInfoMaxAggregateOutputType { + const SoggettoBusinessInfoMaxAggregateOutputType({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + factory SoggettoBusinessInfoMaxAggregateOutputType.fromJson(Map json) => + SoggettoBusinessInfoMaxAggregateOutputType( + uuid: json['uuid'], + rea: json['rea'], + partitaIVA: json['partitaIVA'], + sdi: json['sdi'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final String? rea; + + final String? partitaIVA; + + final String? sdi; + + final String? soggettoUuid; +} + +class SoggettoBusinessInfoGroupByOutputType { + const SoggettoBusinessInfoGroupByOutputType({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + factory SoggettoBusinessInfoGroupByOutputType.fromJson(Map json) => + SoggettoBusinessInfoGroupByOutputType( + uuid: json['uuid'], + rea: json['rea'], + partitaIVA: json['partitaIVA'], + sdi: json['sdi'], + soggettoUuid: json['soggettoUuid'], + $count: json['_count'] is Map + ? _i2.SoggettoBusinessInfoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.SoggettoBusinessInfoMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.SoggettoBusinessInfoMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final String? uuid; + + final String? rea; + + final String? partitaIVA; + + final String? sdi; + + final String? soggettoUuid; + + final _i2.SoggettoBusinessInfoCountAggregateOutputType? $count; + + final _i2.SoggettoBusinessInfoMinAggregateOutputType? $min; + + final _i2.SoggettoBusinessInfoMaxAggregateOutputType? $max; +} + +class SoggettoBusinessInfoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCountOrderByAggregateInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? rea; + + final _i2.SortOrder? partitaIVA; + + final _i2.SortOrder? sdi; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoMaxOrderByAggregateInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? rea; + + final _i2.SortOrder? partitaIVA; + + final _i2.SortOrder? sdi; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoMinOrderByAggregateInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? rea; + + final _i2.SortOrder? partitaIVA; + + final _i2.SortOrder? sdi; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoOrderByWithAggregationInput({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? rea; + + final _i2.SortOrder? partitaIVA; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? sdi; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SoggettoBusinessInfoCountOrderByAggregateInput? $count; + + final _i2.SoggettoBusinessInfoMaxOrderByAggregateInput? $max; + + final _i2.SoggettoBusinessInfoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class SoggettoBusinessInfoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoScalarWhereWithAggregatesInput, + Iterable<_i2.SoggettoBusinessInfoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.SoggettoBusinessInfoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.SoggettoBusinessInfoScalarWhereWithAggregatesInput, + Iterable<_i2.SoggettoBusinessInfoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? rea; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? partitaIVA; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? sdi; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? soggettoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoCountAggregateOutputTypeSelect({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.$all, + }); + + final bool? uuid; + + final bool? rea; + + final bool? partitaIVA; + + final bool? sdi; + + final bool? soggettoUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + '_all': $all, + }; +} + +class SoggettoBusinessInfoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoGroupByOutputTypeCountArgs({this.select}); + + final _i2.SoggettoBusinessInfoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoBusinessInfoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoMinAggregateOutputTypeSelect({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? rea; + + final bool? partitaIVA; + + final bool? sdi; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoGroupByOutputTypeMinArgs({this.select}); + + final _i2.SoggettoBusinessInfoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoBusinessInfoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoMaxAggregateOutputTypeSelect({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? rea; + + final bool? partitaIVA; + + final bool? sdi; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + }; +} + +class SoggettoBusinessInfoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.SoggettoBusinessInfoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class SoggettoBusinessInfoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const SoggettoBusinessInfoGroupByOutputTypeSelect({ + this.uuid, + this.rea, + this.partitaIVA, + this.sdi, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? rea; + + final bool? partitaIVA; + + final bool? sdi; + + final bool? soggettoUuid; + + final _i1 + .PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'rea': rea, + 'partitaIVA': partitaIVA, + 'sdi': sdi, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateSoggettoBusinessInfo { + const AggregateSoggettoBusinessInfo({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateSoggettoBusinessInfo.fromJson(Map json) => + AggregateSoggettoBusinessInfo( + $count: json['_count'] is Map + ? _i2.SoggettoBusinessInfoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.SoggettoBusinessInfoMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.SoggettoBusinessInfoMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.SoggettoBusinessInfoCountAggregateOutputType? $count; + + final _i2.SoggettoBusinessInfoMinAggregateOutputType? $min; + + final _i2.SoggettoBusinessInfoMaxAggregateOutputType? $max; +} + +class AggregateSoggettoBusinessInfoCountArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoBusinessInfoCountArgs({this.select}); + + final _i2.SoggettoBusinessInfoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoBusinessInfoMinArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoBusinessInfoMinArgs({this.select}); + + final _i2.SoggettoBusinessInfoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoBusinessInfoMaxArgs + implements _i1.JsonConvertible> { + const AggregateSoggettoBusinessInfoMaxArgs({this.select}); + + final _i2.SoggettoBusinessInfoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateSoggettoBusinessInfoSelect + implements _i1.JsonConvertible> { + const AggregateSoggettoBusinessInfoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum LegaleRappresentanteScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'LegaleRappresentante'), + nome('nome', 'LegaleRappresentante'), + cognome('cognome', 'LegaleRappresentante'), + soggettoBusinessInfoUuid( + 'soggettoBusinessInfoUuid', 'LegaleRappresentante'); + + const LegaleRappresentanteScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class LegaleRappresentanteCreateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + final _i2.IndirizzoEmailCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutLegaleRappresentanteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedCreateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedCreateInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2 + .NumeroTelefonoUncheckedCreateNestedOneWithoutLegaleRappresentateInput? + numeroTelefono; + + final _i2 + .IndirizzoEmailUncheckedCreateNestedOneWithoutLegaleRappresentanteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteCreateManyInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCreateManyInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteUpdateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + final _i2.IndirizzoEmailUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + final _i2 + .SoggettoBusinessInfoUpdateOneRequiredWithoutLegaleRappresentanteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class LegaleRappresentanteUncheckedUpdateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2 + .NumeroTelefonoUncheckedUpdateOneWithoutLegaleRappresentateNestedInput? + numeroTelefono; + + final _i2 + .IndirizzoEmailUncheckedUpdateOneWithoutLegaleRappresentanteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class LegaleRappresentanteUpdateManyMutationInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUpdateManyMutationInput({ + this.uuid, + this.nome, + this.cognome, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + }; +} + +class LegaleRappresentanteUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteUncheckedUpdateManyInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteCountAggregateOutputType { + const LegaleRappresentanteCountAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$all, + }); + + factory LegaleRappresentanteCountAggregateOutputType.fromJson(Map json) => + LegaleRappresentanteCountAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? nome; + + final int? cognome; + + final int? soggettoBusinessInfoUuid; + + final int? $all; +} + +class LegaleRappresentanteMinAggregateOutputType { + const LegaleRappresentanteMinAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + factory LegaleRappresentanteMinAggregateOutputType.fromJson(Map json) => + LegaleRappresentanteMinAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; +} + +class LegaleRappresentanteMaxAggregateOutputType { + const LegaleRappresentanteMaxAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + factory LegaleRappresentanteMaxAggregateOutputType.fromJson(Map json) => + LegaleRappresentanteMaxAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; +} + +class LegaleRappresentanteGroupByOutputType { + const LegaleRappresentanteGroupByOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$min, + this.$max, + }); + + factory LegaleRappresentanteGroupByOutputType.fromJson(Map json) => + LegaleRappresentanteGroupByOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + $count: json['_count'] is Map + ? _i2.LegaleRappresentanteCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.LegaleRappresentanteMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.LegaleRappresentanteMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; + + final _i2.LegaleRappresentanteCountAggregateOutputType? $count; + + final _i2.LegaleRappresentanteMinAggregateOutputType? $min; + + final _i2.LegaleRappresentanteMaxAggregateOutputType? $max; +} + +class LegaleRappresentanteCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteCountOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteMaxOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteMinOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteOrderByWithAggregationInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + final _i2.LegaleRappresentanteCountOrderByAggregateInput? $count; + + final _i2.LegaleRappresentanteMaxOrderByAggregateInput? $max; + + final _i2.LegaleRappresentanteMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class LegaleRappresentanteScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const LegaleRappresentanteScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i1.PrismaUnion<_i2.LegaleRappresentanteScalarWhereWithAggregatesInput, + Iterable<_i2.LegaleRappresentanteScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.LegaleRappresentanteScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.LegaleRappresentanteScalarWhereWithAggregatesInput, + Iterable<_i2.LegaleRappresentanteScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LegaleRappresentanteCountAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$all, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_all': $all, + }; +} + +class LegaleRappresentanteGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteGroupByOutputTypeCountArgs({this.select}); + + final _i2.LegaleRappresentanteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LegaleRappresentanteMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LegaleRappresentanteMinAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteGroupByOutputTypeMinArgs({this.select}); + + final _i2.LegaleRappresentanteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LegaleRappresentanteMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LegaleRappresentanteMaxAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class LegaleRappresentanteGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const LegaleRappresentanteGroupByOutputTypeMaxArgs({this.select}); + + final _i2.LegaleRappresentanteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LegaleRappresentanteGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const LegaleRappresentanteGroupByOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final _i1 + .PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateLegaleRappresentante { + const AggregateLegaleRappresentante({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateLegaleRappresentante.fromJson(Map json) => + AggregateLegaleRappresentante( + $count: json['_count'] is Map + ? _i2.LegaleRappresentanteCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.LegaleRappresentanteMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.LegaleRappresentanteMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.LegaleRappresentanteCountAggregateOutputType? $count; + + final _i2.LegaleRappresentanteMinAggregateOutputType? $min; + + final _i2.LegaleRappresentanteMaxAggregateOutputType? $max; +} + +class AggregateLegaleRappresentanteCountArgs + implements _i1.JsonConvertible> { + const AggregateLegaleRappresentanteCountArgs({this.select}); + + final _i2.LegaleRappresentanteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLegaleRappresentanteMinArgs + implements _i1.JsonConvertible> { + const AggregateLegaleRappresentanteMinArgs({this.select}); + + final _i2.LegaleRappresentanteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLegaleRappresentanteMaxArgs + implements _i1.JsonConvertible> { + const AggregateLegaleRappresentanteMaxArgs({this.select}); + + final _i2.LegaleRappresentanteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLegaleRappresentanteSelect + implements _i1.JsonConvertible> { + const AggregateLegaleRappresentanteSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum ReferenteScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'Referente'), + nome('nome', 'Referente'), + cognome('cognome', 'Referente'), + soggettoBusinessInfoUuid('soggettoBusinessInfoUuid', 'Referente'); + + const ReferenteScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ReferenteCreateInput + implements _i1.JsonConvertible> { + const ReferenteCreateInput({ + this.uuid, + required this.nome, + required this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + required this.soggettoBusinessInfo, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final _i2.NumeroTelefonoCreateNestedOneWithoutReferenteInput? numeroTelefono; + + final _i2.IndirizzoEmailCreateNestedOneWithoutReferenteInput? indirizzoEmail; + + final _i2.SoggettoBusinessInfoCreateNestedOneWithoutReferenteInput + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedCreateInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedCreateInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoUncheckedCreateNestedOneWithoutReferenteInput? + numeroTelefono; + + final _i2.IndirizzoEmailUncheckedCreateNestedOneWithoutReferenteInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteCreateManyInput + implements _i1.JsonConvertible> { + const ReferenteCreateManyInput({ + this.uuid, + required this.nome, + required this.cognome, + required this.soggettoBusinessInfoUuid, + }); + + final String? uuid; + + final String nome; + + final String cognome; + + final String soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteUpdateInput + implements _i1.JsonConvertible> { + const ReferenteUpdateInput({ + this.uuid, + this.nome, + this.cognome, + this.numeroTelefono, + this.indirizzoEmail, + this.soggettoBusinessInfo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i2.NumeroTelefonoUpdateOneWithoutReferenteNestedInput? numeroTelefono; + + final _i2.IndirizzoEmailUpdateOneWithoutReferenteNestedInput? indirizzoEmail; + + final _i2.SoggettoBusinessInfoUpdateOneRequiredWithoutReferenteNestedInput? + soggettoBusinessInfo; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + 'soggettoBusinessInfo': soggettoBusinessInfo, + }; +} + +class ReferenteUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.numeroTelefono, + this.indirizzoEmail, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + final _i2.NumeroTelefonoUncheckedUpdateOneWithoutReferenteNestedInput? + numeroTelefono; + + final _i2.IndirizzoEmailUncheckedUpdateOneWithoutReferenteNestedInput? + indirizzoEmail; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + 'numeroTelefono': numeroTelefono, + 'indirizzoEmail': indirizzoEmail, + }; +} + +class ReferenteUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ReferenteUpdateManyMutationInput({ + this.uuid, + this.nome, + this.cognome, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + }; +} + +class ReferenteUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ReferenteUncheckedUpdateManyInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? cognome; + + final _i1.PrismaUnion? + soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteCountAggregateOutputType { + const ReferenteCountAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$all, + }); + + factory ReferenteCountAggregateOutputType.fromJson(Map json) => + ReferenteCountAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? nome; + + final int? cognome; + + final int? soggettoBusinessInfoUuid; + + final int? $all; +} + +class ReferenteMinAggregateOutputType { + const ReferenteMinAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + factory ReferenteMinAggregateOutputType.fromJson(Map json) => + ReferenteMinAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; +} + +class ReferenteMaxAggregateOutputType { + const ReferenteMaxAggregateOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + factory ReferenteMaxAggregateOutputType.fromJson(Map json) => + ReferenteMaxAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; +} + +class ReferenteGroupByOutputType { + const ReferenteGroupByOutputType({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$min, + this.$max, + }); + + factory ReferenteGroupByOutputType.fromJson(Map json) => + ReferenteGroupByOutputType( + uuid: json['uuid'], + nome: json['nome'], + cognome: json['cognome'], + soggettoBusinessInfoUuid: json['soggettoBusinessInfoUuid'], + $count: json['_count'] is Map + ? _i2.ReferenteCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ReferenteMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ReferenteMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? nome; + + final String? cognome; + + final String? soggettoBusinessInfoUuid; + + final _i2.ReferenteCountAggregateOutputType? $count; + + final _i2.ReferenteMinAggregateOutputType? $min; + + final _i2.ReferenteMaxAggregateOutputType? $max; +} + +class ReferenteCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ReferenteCountOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ReferenteMaxOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ReferenteMinOrderByAggregateInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ReferenteOrderByWithAggregationInput({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? cognome; + + final _i2.SortOrder? soggettoBusinessInfoUuid; + + final _i2.ReferenteCountOrderByAggregateInput? $count; + + final _i2.ReferenteMaxOrderByAggregateInput? $max; + + final _i2.ReferenteMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ReferenteScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ReferenteScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final _i1.PrismaUnion<_i2.ReferenteScalarWhereWithAggregatesInput, + Iterable<_i2.ReferenteScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ReferenteScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ReferenteScalarWhereWithAggregatesInput, + Iterable<_i2.ReferenteScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? cognome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ReferenteCountAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$all, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_all': $all, + }; +} + +class ReferenteGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ReferenteGroupByOutputTypeCountArgs({this.select}); + + final _i2.ReferenteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ReferenteMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ReferenteMinAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ReferenteGroupByOutputTypeMinArgs({this.select}); + + final _i2.ReferenteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ReferenteMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ReferenteMaxAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + }; +} + +class ReferenteGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ReferenteGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ReferenteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ReferenteGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ReferenteGroupByOutputTypeSelect({ + this.uuid, + this.nome, + this.cognome, + this.soggettoBusinessInfoUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? nome; + + final bool? cognome; + + final bool? soggettoBusinessInfoUuid; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'cognome': cognome, + 'soggettoBusinessInfoUuid': soggettoBusinessInfoUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateReferente { + const AggregateReferente({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateReferente.fromJson(Map json) => AggregateReferente( + $count: json['_count'] is Map + ? _i2.ReferenteCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ReferenteMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ReferenteMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ReferenteCountAggregateOutputType? $count; + + final _i2.ReferenteMinAggregateOutputType? $min; + + final _i2.ReferenteMaxAggregateOutputType? $max; +} + +class AggregateReferenteCountArgs + implements _i1.JsonConvertible> { + const AggregateReferenteCountArgs({this.select}); + + final _i2.ReferenteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateReferenteMinArgs + implements _i1.JsonConvertible> { + const AggregateReferenteMinArgs({this.select}); + + final _i2.ReferenteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateReferenteMaxArgs + implements _i1.JsonConvertible> { + const AggregateReferenteMaxArgs({this.select}); + + final _i2.ReferenteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateReferenteSelect + implements _i1.JsonConvertible> { + const AggregateReferenteSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class IndirizzoEmailCreateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutIndirizziEmailInput? soggetto; + + final _i2.ReferenteCreateNestedOneWithoutIndirizzoEmailInput? referente; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutIndirizzoEmailInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailUncheckedCreateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedCreateInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentanteUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCreateManyInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCreateManyInput({ + this.uuid, + required this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String indirizzo; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentanteUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUpdateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUpdateInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggetto, + this.referente, + this.legaleRappresentante, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutIndirizziEmailNestedInput? soggetto; + + final _i2.ReferenteUpdateOneWithoutIndirizzoEmailNestedInput? referente; + + final _i2.LegaleRappresentanteUpdateOneWithoutIndirizzoEmailNestedInput? + legaleRappresentante; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'referente': referente, + 'legaleRappresentante': legaleRappresentante, + }; +} + +class IndirizzoEmailUncheckedUpdateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentanteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const IndirizzoEmailUncheckedUpdateManyInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentanteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCountAggregateOutputType { + const IndirizzoEmailCountAggregateOutputType({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.$all, + }); + + factory IndirizzoEmailCountAggregateOutputType.fromJson(Map json) => + IndirizzoEmailCountAggregateOutputType( + uuid: json['uuid'], + indirizzo: json['indirizzo'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentanteUuid: json['legaleRappresentanteUuid'], + referenteUuid: json['referenteUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? indirizzo; + + final int? etichetta; + + final int? soggettoUuid; + + final int? legaleRappresentanteUuid; + + final int? referenteUuid; + + final int? $all; +} + +class IndirizzoEmailMinAggregateOutputType { + const IndirizzoEmailMinAggregateOutputType({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + factory IndirizzoEmailMinAggregateOutputType.fromJson(Map json) => + IndirizzoEmailMinAggregateOutputType( + uuid: json['uuid'], + indirizzo: json['indirizzo'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentanteUuid: json['legaleRappresentanteUuid'], + referenteUuid: json['referenteUuid'], + ); + + final String? uuid; + + final String? indirizzo; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentanteUuid; + + final String? referenteUuid; +} + +class IndirizzoEmailMaxAggregateOutputType { + const IndirizzoEmailMaxAggregateOutputType({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + factory IndirizzoEmailMaxAggregateOutputType.fromJson(Map json) => + IndirizzoEmailMaxAggregateOutputType( + uuid: json['uuid'], + indirizzo: json['indirizzo'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentanteUuid: json['legaleRappresentanteUuid'], + referenteUuid: json['referenteUuid'], + ); + + final String? uuid; + + final String? indirizzo; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentanteUuid; + + final String? referenteUuid; +} + +class IndirizzoEmailGroupByOutputType { + const IndirizzoEmailGroupByOutputType({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.$count, + this.$min, + this.$max, + }); + + factory IndirizzoEmailGroupByOutputType.fromJson(Map json) => + IndirizzoEmailGroupByOutputType( + uuid: json['uuid'], + indirizzo: json['indirizzo'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentanteUuid: json['legaleRappresentanteUuid'], + referenteUuid: json['referenteUuid'], + $count: json['_count'] is Map + ? _i2.IndirizzoEmailCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.IndirizzoEmailMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.IndirizzoEmailMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? indirizzo; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentanteUuid; + + final String? referenteUuid; + + final _i2.IndirizzoEmailCountAggregateOutputType? $count; + + final _i2.IndirizzoEmailMinAggregateOutputType? $min; + + final _i2.IndirizzoEmailMaxAggregateOutputType? $max; +} + +class IndirizzoEmailCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailCountOrderByAggregateInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentanteUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailMaxOrderByAggregateInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentanteUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const IndirizzoEmailMinOrderByAggregateInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentanteUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const IndirizzoEmailOrderByWithAggregationInput({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? indirizzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + legaleRappresentanteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? referenteUuid; + + final _i2.IndirizzoEmailCountOrderByAggregateInput? $count; + + final _i2.IndirizzoEmailMaxOrderByAggregateInput? $max; + + final _i2.IndirizzoEmailMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class IndirizzoEmailScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const IndirizzoEmailScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereWithAggregatesInput, + Iterable<_i2.IndirizzoEmailScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.IndirizzoEmailScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.IndirizzoEmailScalarWhereWithAggregatesInput, + Iterable<_i2.IndirizzoEmailScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? legaleRappresentanteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? referenteUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IndirizzoEmailCountAggregateOutputTypeSelect({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.$all, + }); + + final bool? uuid; + + final bool? indirizzo; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentanteUuid; + + final bool? referenteUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + '_all': $all, + }; +} + +class IndirizzoEmailGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailGroupByOutputTypeCountArgs({this.select}); + + final _i2.IndirizzoEmailCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IndirizzoEmailMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IndirizzoEmailMinAggregateOutputTypeSelect({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final bool? uuid; + + final bool? indirizzo; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentanteUuid; + + final bool? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailGroupByOutputTypeMinArgs({this.select}); + + final _i2.IndirizzoEmailMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IndirizzoEmailMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IndirizzoEmailMaxAggregateOutputTypeSelect({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + }); + + final bool? uuid; + + final bool? indirizzo; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentanteUuid; + + final bool? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + }; +} + +class IndirizzoEmailGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const IndirizzoEmailGroupByOutputTypeMaxArgs({this.select}); + + final _i2.IndirizzoEmailMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IndirizzoEmailGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const IndirizzoEmailGroupByOutputTypeSelect({ + this.uuid, + this.indirizzo, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentanteUuid, + this.referenteUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? indirizzo; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentanteUuid; + + final bool? referenteUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'indirizzo': indirizzo, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentanteUuid': legaleRappresentanteUuid, + 'referenteUuid': referenteUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateIndirizzoEmail { + const AggregateIndirizzoEmail({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateIndirizzoEmail.fromJson(Map json) => AggregateIndirizzoEmail( + $count: json['_count'] is Map + ? _i2.IndirizzoEmailCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.IndirizzoEmailMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.IndirizzoEmailMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.IndirizzoEmailCountAggregateOutputType? $count; + + final _i2.IndirizzoEmailMinAggregateOutputType? $min; + + final _i2.IndirizzoEmailMaxAggregateOutputType? $max; +} + +class AggregateIndirizzoEmailCountArgs + implements _i1.JsonConvertible> { + const AggregateIndirizzoEmailCountArgs({this.select}); + + final _i2.IndirizzoEmailCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIndirizzoEmailMinArgs + implements _i1.JsonConvertible> { + const AggregateIndirizzoEmailMinArgs({this.select}); + + final _i2.IndirizzoEmailMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIndirizzoEmailMaxArgs + implements _i1.JsonConvertible> { + const AggregateIndirizzoEmailMaxArgs({this.select}); + + final _i2.IndirizzoEmailMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIndirizzoEmailSelect + implements _i1.JsonConvertible> { + const AggregateIndirizzoEmailSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NumeroTelefonoCreateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i2.SoggettoCreateNestedOneWithoutNumeriTelefonoInput? soggetto; + + final _i2.LegaleRappresentanteCreateNestedOneWithoutNumeroTelefonoInput? + legaleRappresentate; + + final _i2.ReferenteCreateNestedOneWithoutNumeroTelefonoInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class NumeroTelefonoUncheckedCreateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedCreateInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentateUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCreateManyInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCreateManyInput({ + this.uuid, + required this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final String? uuid; + + final String numero; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? legaleRappresentateUuid; + + final _i1.PrismaUnion? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUpdateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUpdateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggetto, + this.legaleRappresentate, + this.referente, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.SoggettoUpdateOneWithoutNumeriTelefonoNestedInput? soggetto; + + final _i2.LegaleRappresentanteUpdateOneWithoutNumeroTelefonoNestedInput? + legaleRappresentate; + + final _i2.ReferenteUpdateOneWithoutNumeroTelefonoNestedInput? referente; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggetto': soggetto, + 'legaleRappresentate': legaleRappresentate, + 'referente': referente, + }; +} + +class NumeroTelefonoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentateUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const NumeroTelefonoUncheckedUpdateManyInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? numero; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? legaleRappresentateUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCountAggregateOutputType { + const NumeroTelefonoCountAggregateOutputType({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.$all, + }); + + factory NumeroTelefonoCountAggregateOutputType.fromJson(Map json) => + NumeroTelefonoCountAggregateOutputType( + uuid: json['uuid'], + numero: json['numero'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentateUuid: json['legaleRappresentateUuid'], + referenteUuid: json['referenteUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? numero; + + final int? etichetta; + + final int? soggettoUuid; + + final int? legaleRappresentateUuid; + + final int? referenteUuid; + + final int? $all; +} + +class NumeroTelefonoMinAggregateOutputType { + const NumeroTelefonoMinAggregateOutputType({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + factory NumeroTelefonoMinAggregateOutputType.fromJson(Map json) => + NumeroTelefonoMinAggregateOutputType( + uuid: json['uuid'], + numero: json['numero'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentateUuid: json['legaleRappresentateUuid'], + referenteUuid: json['referenteUuid'], + ); + + final String? uuid; + + final String? numero; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentateUuid; + + final String? referenteUuid; +} + +class NumeroTelefonoMaxAggregateOutputType { + const NumeroTelefonoMaxAggregateOutputType({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + factory NumeroTelefonoMaxAggregateOutputType.fromJson(Map json) => + NumeroTelefonoMaxAggregateOutputType( + uuid: json['uuid'], + numero: json['numero'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentateUuid: json['legaleRappresentateUuid'], + referenteUuid: json['referenteUuid'], + ); + + final String? uuid; + + final String? numero; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentateUuid; + + final String? referenteUuid; +} + +class NumeroTelefonoGroupByOutputType { + const NumeroTelefonoGroupByOutputType({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.$count, + this.$min, + this.$max, + }); + + factory NumeroTelefonoGroupByOutputType.fromJson(Map json) => + NumeroTelefonoGroupByOutputType( + uuid: json['uuid'], + numero: json['numero'], + etichetta: json['etichetta'], + soggettoUuid: json['soggettoUuid'], + legaleRappresentateUuid: json['legaleRappresentateUuid'], + referenteUuid: json['referenteUuid'], + $count: json['_count'] is Map + ? _i2.NumeroTelefonoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.NumeroTelefonoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.NumeroTelefonoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? numero; + + final String? etichetta; + + final String? soggettoUuid; + + final String? legaleRappresentateUuid; + + final String? referenteUuid; + + final _i2.NumeroTelefonoCountAggregateOutputType? $count; + + final _i2.NumeroTelefonoMinAggregateOutputType? $min; + + final _i2.NumeroTelefonoMaxAggregateOutputType? $max; +} + +class NumeroTelefonoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoCountOrderByAggregateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? numero; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentateUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoMaxOrderByAggregateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? numero; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentateUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const NumeroTelefonoMinOrderByAggregateInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? numero; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? legaleRappresentateUuid; + + final _i2.SortOrder? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const NumeroTelefonoOrderByWithAggregationInput({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? numero; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + legaleRappresentateUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? referenteUuid; + + final _i2.NumeroTelefonoCountOrderByAggregateInput? $count; + + final _i2.NumeroTelefonoMaxOrderByAggregateInput? $max; + + final _i2.NumeroTelefonoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NumeroTelefonoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const NumeroTelefonoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereWithAggregatesInput, + Iterable<_i2.NumeroTelefonoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.NumeroTelefonoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.NumeroTelefonoScalarWhereWithAggregatesInput, + Iterable<_i2.NumeroTelefonoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? numero; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? legaleRappresentateUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? referenteUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NumeroTelefonoCountAggregateOutputTypeSelect({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.$all, + }); + + final bool? uuid; + + final bool? numero; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentateUuid; + + final bool? referenteUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + '_all': $all, + }; +} + +class NumeroTelefonoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoGroupByOutputTypeCountArgs({this.select}); + + final _i2.NumeroTelefonoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NumeroTelefonoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NumeroTelefonoMinAggregateOutputTypeSelect({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final bool? uuid; + + final bool? numero; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentateUuid; + + final bool? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoGroupByOutputTypeMinArgs({this.select}); + + final _i2.NumeroTelefonoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NumeroTelefonoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NumeroTelefonoMaxAggregateOutputTypeSelect({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + }); + + final bool? uuid; + + final bool? numero; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentateUuid; + + final bool? referenteUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + }; +} + +class NumeroTelefonoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const NumeroTelefonoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.NumeroTelefonoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NumeroTelefonoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const NumeroTelefonoGroupByOutputTypeSelect({ + this.uuid, + this.numero, + this.etichetta, + this.soggettoUuid, + this.legaleRappresentateUuid, + this.referenteUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? numero; + + final bool? etichetta; + + final bool? soggettoUuid; + + final bool? legaleRappresentateUuid; + + final bool? referenteUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'numero': numero, + 'etichetta': etichetta, + 'soggettoUuid': soggettoUuid, + 'legaleRappresentateUuid': legaleRappresentateUuid, + 'referenteUuid': referenteUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateNumeroTelefono { + const AggregateNumeroTelefono({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateNumeroTelefono.fromJson(Map json) => AggregateNumeroTelefono( + $count: json['_count'] is Map + ? _i2.NumeroTelefonoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.NumeroTelefonoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.NumeroTelefonoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.NumeroTelefonoCountAggregateOutputType? $count; + + final _i2.NumeroTelefonoMinAggregateOutputType? $min; + + final _i2.NumeroTelefonoMaxAggregateOutputType? $max; +} + +class AggregateNumeroTelefonoCountArgs + implements _i1.JsonConvertible> { + const AggregateNumeroTelefonoCountArgs({this.select}); + + final _i2.NumeroTelefonoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNumeroTelefonoMinArgs + implements _i1.JsonConvertible> { + const AggregateNumeroTelefonoMinArgs({this.select}); + + final _i2.NumeroTelefonoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNumeroTelefonoMaxArgs + implements _i1.JsonConvertible> { + const AggregateNumeroTelefonoMaxArgs({this.select}); + + final _i2.NumeroTelefonoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNumeroTelefonoSelect + implements _i1.JsonConvertible> { + const AggregateNumeroTelefonoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class DomicilioCreateInput + implements _i1.JsonConvertible> { + const DomicilioCreateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final _i2.SoggettoCreateNestedOneWithoutDomiciliInput soggetto; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineCreateNestedManyWithoutDomicilioInput? prodottiOrdinati; + + final _i2.LeadCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedCreateInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedCreateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedCreateNestedManyWithoutDomicilioInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutDomicilioInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedCreateNestedManyWithoutDomicilioInput? + prodottiOrdinati; + + final _i2.LeadUncheckedCreateNestedManyWithoutDomicilioInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioCreateManyInput + implements _i1.JsonConvertible> { + const DomicilioCreateManyInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + required this.soggettoUuid, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i1.PrismaUnion? indirizzo; + + final _i1.PrismaUnion? numeroCivico; + + final _i1.PrismaUnion? citta; + + final _i1.PrismaUnion? cap; + + final _i1.PrismaUnion? provincia; + + final String soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioUpdateInput + implements _i1.JsonConvertible> { + const DomicilioUpdateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggetto, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i2.SoggettoUpdateOneRequiredWithoutDomiciliNestedInput? soggetto; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUpdateManyWithoutDomicilioNestedInput? prodottiOrdinati; + + final _i2.LeadUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggetto': soggetto, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedUpdateInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.contrattiEnelXAssicurazione, + this.forniture, + this.contrattiEnelFibra, + this.prodottiOrdinati, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelXAssicurazione; + + final _i2.FornituraUncheckedUpdateManyWithoutDomicilioNestedInput? forniture; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutDomicilioNestedInput? + contrattiEnelFibra; + + final _i2.OrdineUncheckedUpdateManyWithoutDomicilioNestedInput? + prodottiOrdinati; + + final _i2.LeadUncheckedUpdateManyWithoutDomicilioNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'forniture': forniture, + 'contrattiEnelFibra': contrattiEnelFibra, + 'prodottiOrdinati': prodottiOrdinati, + 'leads': leads, + }; +} + +class DomicilioUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const DomicilioUncheckedUpdateManyInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? indirizzo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? numeroCivico; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? citta; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? cap; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? provincia; + + final _i1.PrismaUnion? + soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioCountAggregateOutputType { + const DomicilioCountAggregateOutputType({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.$all, + }); + + factory DomicilioCountAggregateOutputType.fromJson(Map json) => + DomicilioCountAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + indirizzo: json['indirizzo'], + numeroCivico: json['numeroCivico'], + citta: json['citta'], + cap: json['cap'], + provincia: json['provincia'], + soggettoUuid: json['soggettoUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? etichetta; + + final int? indirizzo; + + final int? numeroCivico; + + final int? citta; + + final int? cap; + + final int? provincia; + + final int? soggettoUuid; + + final int? $all; +} + +class DomicilioMinAggregateOutputType { + const DomicilioMinAggregateOutputType({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + factory DomicilioMinAggregateOutputType.fromJson(Map json) => + DomicilioMinAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + indirizzo: json['indirizzo'], + numeroCivico: json['numeroCivico'], + citta: json['citta'], + cap: json['cap'], + provincia: json['provincia'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final String? etichetta; + + final String? indirizzo; + + final String? numeroCivico; + + final String? citta; + + final String? cap; + + final String? provincia; + + final String? soggettoUuid; +} + +class DomicilioMaxAggregateOutputType { + const DomicilioMaxAggregateOutputType({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + factory DomicilioMaxAggregateOutputType.fromJson(Map json) => + DomicilioMaxAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + indirizzo: json['indirizzo'], + numeroCivico: json['numeroCivico'], + citta: json['citta'], + cap: json['cap'], + provincia: json['provincia'], + soggettoUuid: json['soggettoUuid'], + ); + + final String? uuid; + + final String? etichetta; + + final String? indirizzo; + + final String? numeroCivico; + + final String? citta; + + final String? cap; + + final String? provincia; + + final String? soggettoUuid; +} + +class DomicilioGroupByOutputType { + const DomicilioGroupByOutputType({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + factory DomicilioGroupByOutputType.fromJson(Map json) => + DomicilioGroupByOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + indirizzo: json['indirizzo'], + numeroCivico: json['numeroCivico'], + citta: json['citta'], + cap: json['cap'], + provincia: json['provincia'], + soggettoUuid: json['soggettoUuid'], + $count: json['_count'] is Map + ? _i2.DomicilioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.DomicilioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.DomicilioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? etichetta; + + final String? indirizzo; + + final String? numeroCivico; + + final String? citta; + + final String? cap; + + final String? provincia; + + final String? soggettoUuid; + + final _i2.DomicilioCountAggregateOutputType? $count; + + final _i2.DomicilioMinAggregateOutputType? $min; + + final _i2.DomicilioMaxAggregateOutputType? $max; +} + +class DomicilioCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const DomicilioCountOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? numeroCivico; + + final _i2.SortOrder? citta; + + final _i2.SortOrder? cap; + + final _i2.SortOrder? provincia; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const DomicilioMaxOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? numeroCivico; + + final _i2.SortOrder? citta; + + final _i2.SortOrder? cap; + + final _i2.SortOrder? provincia; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const DomicilioMinOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? indirizzo; + + final _i2.SortOrder? numeroCivico; + + final _i2.SortOrder? citta; + + final _i2.SortOrder? cap; + + final _i2.SortOrder? provincia; + + final _i2.SortOrder? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const DomicilioOrderByWithAggregationInput({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? indirizzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? numeroCivico; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? citta; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? cap; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? provincia; + + final _i2.SortOrder? soggettoUuid; + + final _i2.DomicilioCountOrderByAggregateInput? $count; + + final _i2.DomicilioMaxOrderByAggregateInput? $max; + + final _i2.DomicilioMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class DomicilioScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const DomicilioScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereWithAggregatesInput, + Iterable<_i2.DomicilioScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.DomicilioScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.DomicilioScalarWhereWithAggregatesInput, + Iterable<_i2.DomicilioScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? indirizzo; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? numeroCivico; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? citta; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? cap; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? provincia; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? soggettoUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const DomicilioCountAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.$all, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? indirizzo; + + final bool? numeroCivico; + + final bool? citta; + + final bool? cap; + + final bool? provincia; + + final bool? soggettoUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + '_all': $all, + }; +} + +class DomicilioGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const DomicilioGroupByOutputTypeCountArgs({this.select}); + + final _i2.DomicilioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class DomicilioMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const DomicilioMinAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? indirizzo; + + final bool? numeroCivico; + + final bool? citta; + + final bool? cap; + + final bool? provincia; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const DomicilioGroupByOutputTypeMinArgs({this.select}); + + final _i2.DomicilioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class DomicilioMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const DomicilioMaxAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? indirizzo; + + final bool? numeroCivico; + + final bool? citta; + + final bool? cap; + + final bool? provincia; + + final bool? soggettoUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + }; +} + +class DomicilioGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const DomicilioGroupByOutputTypeMaxArgs({this.select}); + + final _i2.DomicilioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class DomicilioGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const DomicilioGroupByOutputTypeSelect({ + this.uuid, + this.etichetta, + this.indirizzo, + this.numeroCivico, + this.citta, + this.cap, + this.provincia, + this.soggettoUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? indirizzo; + + final bool? numeroCivico; + + final bool? citta; + + final bool? cap; + + final bool? provincia; + + final bool? soggettoUuid; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'indirizzo': indirizzo, + 'numeroCivico': numeroCivico, + 'citta': citta, + 'cap': cap, + 'provincia': provincia, + 'soggettoUuid': soggettoUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateDomicilio { + const AggregateDomicilio({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateDomicilio.fromJson(Map json) => AggregateDomicilio( + $count: json['_count'] is Map + ? _i2.DomicilioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.DomicilioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.DomicilioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.DomicilioCountAggregateOutputType? $count; + + final _i2.DomicilioMinAggregateOutputType? $min; + + final _i2.DomicilioMaxAggregateOutputType? $max; +} + +class AggregateDomicilioCountArgs + implements _i1.JsonConvertible> { + const AggregateDomicilioCountArgs({this.select}); + + final _i2.DomicilioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateDomicilioMinArgs + implements _i1.JsonConvertible> { + const AggregateDomicilioMinArgs({this.select}); + + final _i2.DomicilioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateDomicilioMaxArgs + implements _i1.JsonConvertible> { + const AggregateDomicilioMaxArgs({this.select}); + + final _i2.DomicilioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateDomicilioSelect + implements _i1.JsonConvertible> { + const AggregateDomicilioSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ServizioEwoCreateInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateInput({ + required this.id, + required this.nome, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + required this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.FornitoreCreateNestedOneWithoutServiziEwoInput fornitore; + + final _i2.TipoPraticaCreateNestedManyWithoutServiziEwoInput? tipiPratiche; + + final _i2.FornituraCreateNestedManyWithoutServizioEwoInput? forniture; + + final _i2.StatoPraticaCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2.ModuloContrattoCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedCreateInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedCreateInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + final _i2.TipoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + tipiPratiche; + + final _i2.FornituraUncheckedCreateNestedManyWithoutServizioEwoInput? + forniture; + + final _i2.StatoPraticaUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedCreateNestedManyWithoutServiziEwoInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedCreateNestedManyWithoutServizioEwoInput? offerte; + + final _i2 + .ModuloContrattoUncheckedCreateNestedManyWithoutServiziEwoCollegabiliInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoCreateManyInput + implements _i1.JsonConvertible> { + const ServizioEwoCreateManyInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.tipoServizioEwo, + required this.colore, + required this.icona, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoServizioEwo tipoServizioEwo; + + final String colore; + + final String icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoUpdateInput + implements _i1.JsonConvertible> { + const ServizioEwoUpdateInput({ + this.id, + this.nome, + this.tipoServizioEwo, + this.colore, + this.icona, + this.fornitore, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.FornitoreUpdateOneRequiredWithoutServiziEwoNestedInput? fornitore; + + final _i2.TipoPraticaUpdateManyWithoutServiziEwoNestedInput? tipiPratiche; + + final _i2.FornituraUpdateManyWithoutServizioEwoNestedInput? forniture; + + final _i2.StatoPraticaUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2.ModuloContrattoUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'fornitore': fornitore, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.tipiPratiche, + this.forniture, + this.statiPossibiliPratiche, + this.statiPossibiliContratti, + this.offerte, + this.moduliContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + final _i2.TipoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + tipiPratiche; + + final _i2.FornituraUncheckedUpdateManyWithoutServizioEwoNestedInput? + forniture; + + final _i2.StatoPraticaUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliPratiche; + + final _i2.StatoContrattoUncheckedUpdateManyWithoutServiziEwoNestedInput? + statiPossibiliContratti; + + final _i2.OffertaUncheckedUpdateManyWithoutServizioEwoNestedInput? offerte; + + final _i2 + .ModuloContrattoUncheckedUpdateManyWithoutServiziEwoCollegabiliNestedInput? + moduliContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + 'tipiPratiche': tipiPratiche, + 'forniture': forniture, + 'statiPossibiliPratiche': statiPossibiliPratiche, + 'statiPossibiliContratti': statiPossibiliContratti, + 'offerte': offerte, + 'moduliContratto': moduliContratto, + }; +} + +class ServizioEwoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ServizioEwoUncheckedUpdateManyInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.EnumTipoServizioEwoFieldUpdateOperationsInput>? tipoServizioEwo; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoCountAggregateOutputType { + const ServizioEwoCountAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.$all, + }); + + factory ServizioEwoCountAggregateOutputType.fromJson(Map json) => + ServizioEwoCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + tipoServizioEwo: json['tipoServizioEwo'], + colore: json['colore'], + icona: json['icona'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? fornitoreId; + + final int? tipoServizioEwo; + + final int? colore; + + final int? icona; + + final int? $all; +} + +class ServizioEwoMinAggregateOutputType { + const ServizioEwoMinAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + factory ServizioEwoMinAggregateOutputType.fromJson(Map json) => + ServizioEwoMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + tipoServizioEwo: json['tipoServizioEwo'] != null + ? _i3.TipoServizioEwo.values + .firstWhere((e) => e.name == json['tipoServizioEwo']) + : null, + colore: json['colore'], + icona: json['icona'], + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoServizioEwo? tipoServizioEwo; + + final String? colore; + + final String? icona; +} + +class ServizioEwoMaxAggregateOutputType { + const ServizioEwoMaxAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + factory ServizioEwoMaxAggregateOutputType.fromJson(Map json) => + ServizioEwoMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + tipoServizioEwo: json['tipoServizioEwo'] != null + ? _i3.TipoServizioEwo.values + .firstWhere((e) => e.name == json['tipoServizioEwo']) + : null, + colore: json['colore'], + icona: json['icona'], + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoServizioEwo? tipoServizioEwo; + + final String? colore; + + final String? icona; +} + +class ServizioEwoGroupByOutputType { + const ServizioEwoGroupByOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.$count, + this.$min, + this.$max, + }); + + factory ServizioEwoGroupByOutputType.fromJson(Map json) => + ServizioEwoGroupByOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + tipoServizioEwo: json['tipoServizioEwo'] != null + ? _i3.TipoServizioEwo.values + .firstWhere((e) => e.name == json['tipoServizioEwo']) + : null, + colore: json['colore'], + icona: json['icona'], + $count: json['_count'] is Map + ? _i2.ServizioEwoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ServizioEwoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ServizioEwoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoServizioEwo? tipoServizioEwo; + + final String? colore; + + final String? icona; + + final _i2.ServizioEwoCountAggregateOutputType? $count; + + final _i2.ServizioEwoMinAggregateOutputType? $min; + + final _i2.ServizioEwoMaxAggregateOutputType? $max; +} + +class ServizioEwoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ServizioEwoCountOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoServizioEwo; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ServizioEwoMaxOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoServizioEwo; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ServizioEwoMinOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoServizioEwo; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ServizioEwoOrderByWithAggregationInput({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoServizioEwo; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? icona; + + final _i2.ServizioEwoCountOrderByAggregateInput? $count; + + final _i2.ServizioEwoMaxOrderByAggregateInput? $max; + + final _i2.ServizioEwoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedEnumTipoServizioEwoWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoServizioEwoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i1.Reference<_i3.TipoServizioEwo>>? + equals; + + final Iterable<_i3.TipoServizioEwo>? $in; + + final Iterable<_i3.TipoServizioEwo>? notIn; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.NestedEnumTipoServizioEwoWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoServizioEwoFilter? $min; + + final _i2.NestedEnumTipoServizioEwoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTipoServizioEwoWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTipoServizioEwoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion<_i3.TipoServizioEwo, _i1.Reference<_i3.TipoServizioEwo>>? + equals; + + final Iterable<_i3.TipoServizioEwo>? $in; + + final Iterable<_i3.TipoServizioEwo>? notIn; + + final _i1.PrismaUnion<_i3.TipoServizioEwo, + _i2.NestedEnumTipoServizioEwoWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoServizioEwoFilter? $min; + + final _i2.NestedEnumTipoServizioEwoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ServizioEwoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ServizioEwoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereWithAggregatesInput, + Iterable<_i2.ServizioEwoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ServizioEwoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ServizioEwoScalarWhereWithAggregatesInput, + Iterable<_i2.ServizioEwoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.EnumTipoServizioEwoWithAggregatesFilter, + _i3.TipoServizioEwo>? tipoServizioEwo; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? icona; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ServizioEwoCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? tipoServizioEwo; + + final bool? colore; + + final bool? icona; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + '_all': $all, + }; +} + +class ServizioEwoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ServizioEwoGroupByOutputTypeCountArgs({this.select}); + + final _i2.ServizioEwoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ServizioEwoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ServizioEwoMinAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? tipoServizioEwo; + + final bool? colore; + + final bool? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ServizioEwoGroupByOutputTypeMinArgs({this.select}); + + final _i2.ServizioEwoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ServizioEwoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ServizioEwoMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? tipoServizioEwo; + + final bool? colore; + + final bool? icona; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + }; +} + +class ServizioEwoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ServizioEwoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ServizioEwoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ServizioEwoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ServizioEwoGroupByOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.tipoServizioEwo, + this.colore, + this.icona, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? tipoServizioEwo; + + final bool? colore; + + final bool? icona; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'tipoServizioEwo': tipoServizioEwo, + 'colore': colore, + 'icona': icona, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateServizioEwo { + const AggregateServizioEwo({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateServizioEwo.fromJson(Map json) => AggregateServizioEwo( + $count: json['_count'] is Map + ? _i2.ServizioEwoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ServizioEwoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ServizioEwoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ServizioEwoCountAggregateOutputType? $count; + + final _i2.ServizioEwoMinAggregateOutputType? $min; + + final _i2.ServizioEwoMaxAggregateOutputType? $max; +} + +class AggregateServizioEwoCountArgs + implements _i1.JsonConvertible> { + const AggregateServizioEwoCountArgs({this.select}); + + final _i2.ServizioEwoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateServizioEwoMinArgs + implements _i1.JsonConvertible> { + const AggregateServizioEwoMinArgs({this.select}); + + final _i2.ServizioEwoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateServizioEwoMaxArgs + implements _i1.JsonConvertible> { + const AggregateServizioEwoMaxArgs({this.select}); + + final _i2.ServizioEwoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateServizioEwoSelect + implements _i1.JsonConvertible> { + const AggregateServizioEwoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class FornituraCreateInput + implements _i1.JsonConvertible> { + const FornituraCreateInput({ + this.uuid, + this.etichetta, + required this.domicilio, + required this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final _i2.DomicilioCreateNestedOneWithoutFornitureInput domicilio; + + final _i2.ServizioEwoCreateNestedOneWithoutFornitureInput servizioEwo; + + final _i2.FornituraLuceCreateNestedOneWithoutFornituraInput? fornituraLuce; + + final _i2.FornituraGasCreateNestedOneWithoutFornituraInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUncheckedCreateInput + implements _i1.JsonConvertible> { + const FornituraUncheckedCreateInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + required this.servizioEwoId, + this.fornituraLuce, + this.fornituraGas, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + final String servizioEwoId; + + final _i2.FornituraLuceUncheckedCreateNestedOneWithoutFornituraInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedCreateNestedOneWithoutFornituraInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraCreateManyInput + implements _i1.JsonConvertible> { + const FornituraCreateManyInput({ + this.uuid, + this.etichetta, + required this.domicilioUuid, + required this.servizioEwoId, + }); + + final String? uuid; + + final _i1.PrismaUnion? etichetta; + + final String domicilioUuid; + + final String servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraUpdateInput + implements _i1.JsonConvertible> { + const FornituraUpdateInput({ + this.uuid, + this.etichetta, + this.domicilio, + this.servizioEwo, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i2.DomicilioUpdateOneRequiredWithoutFornitureNestedInput? domicilio; + + final _i2.ServizioEwoUpdateOneRequiredWithoutFornitureNestedInput? + servizioEwo; + + final _i2.FornituraLuceUpdateOneWithoutFornituraNestedInput? fornituraLuce; + + final _i2.FornituraGasUpdateOneWithoutFornituraNestedInput? fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilio': domicilio, + 'servizioEwo': servizioEwo, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUncheckedUpdateInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.fornituraLuce, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.FornituraLuceUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraLuce; + + final _i2.FornituraGasUncheckedUpdateOneWithoutFornituraNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + 'fornituraLuce': fornituraLuce, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const FornituraUncheckedUpdateManyInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? etichetta; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion? + servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraCountAggregateOutputType { + const FornituraCountAggregateOutputType({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.$all, + }); + + factory FornituraCountAggregateOutputType.fromJson(Map json) => + FornituraCountAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + domicilioUuid: json['domicilioUuid'], + servizioEwoId: json['servizioEwoId'], + $all: json['_all'], + ); + + final int? uuid; + + final int? etichetta; + + final int? domicilioUuid; + + final int? servizioEwoId; + + final int? $all; +} + +class FornituraMinAggregateOutputType { + const FornituraMinAggregateOutputType({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + factory FornituraMinAggregateOutputType.fromJson(Map json) => + FornituraMinAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + domicilioUuid: json['domicilioUuid'], + servizioEwoId: json['servizioEwoId'], + ); + + final String? uuid; + + final String? etichetta; + + final String? domicilioUuid; + + final String? servizioEwoId; +} + +class FornituraMaxAggregateOutputType { + const FornituraMaxAggregateOutputType({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + factory FornituraMaxAggregateOutputType.fromJson(Map json) => + FornituraMaxAggregateOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + domicilioUuid: json['domicilioUuid'], + servizioEwoId: json['servizioEwoId'], + ); + + final String? uuid; + + final String? etichetta; + + final String? domicilioUuid; + + final String? servizioEwoId; +} + +class FornituraGroupByOutputType { + const FornituraGroupByOutputType({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.$count, + this.$min, + this.$max, + }); + + factory FornituraGroupByOutputType.fromJson(Map json) => + FornituraGroupByOutputType( + uuid: json['uuid'], + etichetta: json['etichetta'], + domicilioUuid: json['domicilioUuid'], + servizioEwoId: json['servizioEwoId'], + $count: json['_count'] is Map + ? _i2.FornituraCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? etichetta; + + final String? domicilioUuid; + + final String? servizioEwoId; + + final _i2.FornituraCountAggregateOutputType? $count; + + final _i2.FornituraMinAggregateOutputType? $min; + + final _i2.FornituraMaxAggregateOutputType? $max; +} + +class FornituraCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraCountOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraMaxOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraMinOrderByAggregateInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? etichetta; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const FornituraOrderByWithAggregationInput({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? etichetta; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? servizioEwoId; + + final _i2.FornituraCountOrderByAggregateInput? $count; + + final _i2.FornituraMaxOrderByAggregateInput? $max; + + final _i2.FornituraMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class FornituraScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const FornituraScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final _i1.PrismaUnion<_i2.FornituraScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.FornituraScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? etichetta; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? servizioEwoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraCountAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.$all, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? domicilioUuid; + + final bool? servizioEwoId; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + '_all': $all, + }; +} + +class FornituraGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const FornituraGroupByOutputTypeCountArgs({this.select}); + + final _i2.FornituraCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraMinAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? domicilioUuid; + + final bool? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const FornituraGroupByOutputTypeMinArgs({this.select}); + + final _i2.FornituraMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraMaxAggregateOutputTypeSelect({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? domicilioUuid; + + final bool? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + }; +} + +class FornituraGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const FornituraGroupByOutputTypeMaxArgs({this.select}); + + final _i2.FornituraMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGroupByOutputTypeSelect({ + this.uuid, + this.etichetta, + this.domicilioUuid, + this.servizioEwoId, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? etichetta; + + final bool? domicilioUuid; + + final bool? servizioEwoId; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'etichetta': etichetta, + 'domicilioUuid': domicilioUuid, + 'servizioEwoId': servizioEwoId, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateFornitura { + const AggregateFornitura({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateFornitura.fromJson(Map json) => AggregateFornitura( + $count: json['_count'] is Map + ? _i2.FornituraCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.FornituraCountAggregateOutputType? $count; + + final _i2.FornituraMinAggregateOutputType? $min; + + final _i2.FornituraMaxAggregateOutputType? $max; +} + +class AggregateFornituraCountArgs + implements _i1.JsonConvertible> { + const AggregateFornituraCountArgs({this.select}); + + final _i2.FornituraCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraMinArgs + implements _i1.JsonConvertible> { + const AggregateFornituraMinArgs({this.select}); + + final _i2.FornituraMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraMaxArgs + implements _i1.JsonConvertible> { + const AggregateFornituraMaxArgs({this.select}); + + final _i2.FornituraMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraSelect + implements _i1.JsonConvertible> { + const AggregateFornituraSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum FornituraLuceScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'FornituraLuce'), + pod('pod', 'FornituraLuce'), + fornituraUuid('fornituraUuid', 'FornituraLuce'), + potenza('potenza', 'FornituraLuce'), + tensione('tensione', 'FornituraLuce'); + + const FornituraLuceScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornituraLuceCreateInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateInput({ + this.uuid, + required this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + required this.fornitura, + }); + + final String? uuid; + + final String pod; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + final _i2.FornituraCreateNestedOneWithoutFornituraLuceInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedCreateInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedCreateInput({ + this.uuid, + required this.pod, + required this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final String? uuid; + + final String pod; + + final String fornituraUuid; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedCreateNestedOneWithoutFornituraLuceInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceCreateManyInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateManyInput({ + this.uuid, + required this.pod, + required this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final String? uuid; + + final String pod; + + final String fornituraUuid; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceUpdateInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraLuceNestedInput? + fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedUpdateInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.consumoAnnuoLuce, + this.contrattiEnelLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ConsumoAnnuoLuceUncheckedUpdateOneWithoutFornituraLuceNestedInput? + consumoAnnuoLuce; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'consumoAnnuoLuce': consumoAnnuoLuce, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceUpdateManyMutationInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateManyMutationInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateManyInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceCountAggregateOutputType { + const FornituraLuceCountAggregateOutputType({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.$all, + }); + + factory FornituraLuceCountAggregateOutputType.fromJson(Map json) => + FornituraLuceCountAggregateOutputType( + uuid: json['uuid'], + pod: json['pod'], + fornituraUuid: json['fornituraUuid'], + potenza: json['potenza'], + tensione: json['tensione'], + $all: json['_all'], + ); + + final int? uuid; + + final int? pod; + + final int? fornituraUuid; + + final int? potenza; + + final int? tensione; + + final int? $all; +} + +class FornituraLuceAvgAggregateOutputType { + const FornituraLuceAvgAggregateOutputType({ + this.potenza, + this.tensione, + }); + + factory FornituraLuceAvgAggregateOutputType.fromJson(Map json) => + FornituraLuceAvgAggregateOutputType( + potenza: json['potenza'], + tensione: json['tensione'], + ); + + final double? potenza; + + final double? tensione; +} + +class FornituraLuceSumAggregateOutputType { + const FornituraLuceSumAggregateOutputType({ + this.potenza, + this.tensione, + }); + + factory FornituraLuceSumAggregateOutputType.fromJson(Map json) => + FornituraLuceSumAggregateOutputType( + potenza: json['potenza'], + tensione: json['tensione'], + ); + + final double? potenza; + + final double? tensione; +} + +class FornituraLuceMinAggregateOutputType { + const FornituraLuceMinAggregateOutputType({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + factory FornituraLuceMinAggregateOutputType.fromJson(Map json) => + FornituraLuceMinAggregateOutputType( + uuid: json['uuid'], + pod: json['pod'], + fornituraUuid: json['fornituraUuid'], + potenza: json['potenza'], + tensione: json['tensione'], + ); + + final String? uuid; + + final String? pod; + + final String? fornituraUuid; + + final double? potenza; + + final double? tensione; +} + +class FornituraLuceMaxAggregateOutputType { + const FornituraLuceMaxAggregateOutputType({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + factory FornituraLuceMaxAggregateOutputType.fromJson(Map json) => + FornituraLuceMaxAggregateOutputType( + uuid: json['uuid'], + pod: json['pod'], + fornituraUuid: json['fornituraUuid'], + potenza: json['potenza'], + tensione: json['tensione'], + ); + + final String? uuid; + + final String? pod; + + final String? fornituraUuid; + + final double? potenza; + + final double? tensione; +} + +class FornituraLuceGroupByOutputType { + const FornituraLuceGroupByOutputType({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory FornituraLuceGroupByOutputType.fromJson(Map json) => + FornituraLuceGroupByOutputType( + uuid: json['uuid'], + pod: json['pod'], + fornituraUuid: json['fornituraUuid'], + potenza: json['potenza'], + tensione: json['tensione'], + $count: json['_count'] is Map + ? _i2.FornituraLuceCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.FornituraLuceAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.FornituraLuceSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? pod; + + final String? fornituraUuid; + + final double? potenza; + + final double? tensione; + + final _i2.FornituraLuceCountAggregateOutputType? $count; + + final _i2.FornituraLuceAvgAggregateOutputType? $avg; + + final _i2.FornituraLuceSumAggregateOutputType? $sum; + + final _i2.FornituraLuceMinAggregateOutputType? $min; + + final _i2.FornituraLuceMaxAggregateOutputType? $max; +} + +class FornituraLuceCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraLuceCountOrderByAggregateInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pod; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? potenza; + + final _i2.SortOrder? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraLuceAvgOrderByAggregateInput({ + this.potenza, + this.tensione, + }); + + final _i2.SortOrder? potenza; + + final _i2.SortOrder? tensione; + + @override + Map toJson() => { + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraLuceMaxOrderByAggregateInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pod; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? potenza; + + final _i2.SortOrder? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraLuceMinOrderByAggregateInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pod; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? potenza; + + final _i2.SortOrder? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraLuceSumOrderByAggregateInput({ + this.potenza, + this.tensione, + }); + + final _i2.SortOrder? potenza; + + final _i2.SortOrder? tensione; + + @override + Map toJson() => { + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const FornituraLuceOrderByWithAggregationInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pod; + + final _i2.SortOrder? fornituraUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? potenza; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? tensione; + + final _i2.FornituraLuceCountOrderByAggregateInput? $count; + + final _i2.FornituraLuceAvgOrderByAggregateInput? $avg; + + final _i2.FornituraLuceMaxOrderByAggregateInput? $max; + + final _i2.FornituraLuceMinOrderByAggregateInput? $min; + + final _i2.FornituraLuceSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedFloatNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedFloatNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NestedFloatNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedFloatNullableFilter? $avg; + + final _i2.NestedFloatNullableFilter? $sum; + + final _i2.NestedFloatNullableFilter? $min; + + final _i2.NestedFloatNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class FloatNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const FloatNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NestedFloatNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedFloatNullableFilter? $avg; + + final _i2.NestedFloatNullableFilter? $sum; + + final _i2.NestedFloatNullableFilter? $min; + + final _i2.NestedFloatNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class FornituraLuceScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const FornituraLuceScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraLuceScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.FornituraLuceScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraLuceScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraLuceScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? pod; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? fornituraUuid; + + final _i1.PrismaUnion<_i2.FloatNullableWithAggregatesFilter, + _i1.PrismaUnion>? potenza; + + final _i1.PrismaUnion<_i2.FloatNullableWithAggregatesFilter, + _i1.PrismaUnion>? tensione; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceCountAggregateOutputTypeSelect({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.$all, + }); + + final bool? uuid; + + final bool? pod; + + final bool? fornituraUuid; + + final bool? potenza; + + final bool? tensione; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + '_all': $all, + }; +} + +class FornituraLuceGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeCountArgs({this.select}); + + final _i2.FornituraLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceAvgAggregateOutputTypeSelect({ + this.potenza, + this.tensione, + }); + + final bool? potenza; + + final bool? tensione; + + @override + Map toJson() => { + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeAvgArgs({this.select}); + + final _i2.FornituraLuceAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceSumAggregateOutputTypeSelect({ + this.potenza, + this.tensione, + }); + + final bool? potenza; + + final bool? tensione; + + @override + Map toJson() => { + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeSumArgs({this.select}); + + final _i2.FornituraLuceSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceMinAggregateOutputTypeSelect({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final bool? uuid; + + final bool? pod; + + final bool? fornituraUuid; + + final bool? potenza; + + final bool? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeMinArgs({this.select}); + + final _i2.FornituraLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceMaxAggregateOutputTypeSelect({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + }); + + final bool? uuid; + + final bool? pod; + + final bool? fornituraUuid; + + final bool? potenza; + + final bool? tensione; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + }; +} + +class FornituraLuceGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeMaxArgs({this.select}); + + final _i2.FornituraLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraLuceGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraLuceGroupByOutputTypeSelect({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? pod; + + final bool? fornituraUuid; + + final bool? potenza; + + final bool? tensione; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateFornituraLuce { + const AggregateFornituraLuce({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateFornituraLuce.fromJson(Map json) => AggregateFornituraLuce( + $count: json['_count'] is Map + ? _i2.FornituraLuceCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.FornituraLuceAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.FornituraLuceSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.FornituraLuceCountAggregateOutputType? $count; + + final _i2.FornituraLuceAvgAggregateOutputType? $avg; + + final _i2.FornituraLuceSumAggregateOutputType? $sum; + + final _i2.FornituraLuceMinAggregateOutputType? $min; + + final _i2.FornituraLuceMaxAggregateOutputType? $max; +} + +class AggregateFornituraLuceCountArgs + implements _i1.JsonConvertible> { + const AggregateFornituraLuceCountArgs({this.select}); + + final _i2.FornituraLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraLuceAvgArgs + implements _i1.JsonConvertible> { + const AggregateFornituraLuceAvgArgs({this.select}); + + final _i2.FornituraLuceAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraLuceSumArgs + implements _i1.JsonConvertible> { + const AggregateFornituraLuceSumArgs({this.select}); + + final _i2.FornituraLuceSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraLuceMinArgs + implements _i1.JsonConvertible> { + const AggregateFornituraLuceMinArgs({this.select}); + + final _i2.FornituraLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraLuceMaxArgs + implements _i1.JsonConvertible> { + const AggregateFornituraLuceMaxArgs({this.select}); + + final _i2.FornituraLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraLuceSelect + implements _i1.JsonConvertible> { + const AggregateFornituraLuceSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +enum ConsumoAnnuoLuceScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ConsumoAnnuoLuce'), + consumo('consumo', 'ConsumoAnnuoLuce'), + meseRiferimentoConsumoAnnuo( + 'meseRiferimentoConsumoAnnuo', 'ConsumoAnnuoLuce'), + fornituraLuceUuid('fornituraLuceUuid', 'ConsumoAnnuoLuce'); + + const ConsumoAnnuoLuceScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornituraLuceCreateWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateWithoutConsumoAnnuoLuceInput({ + this.uuid, + required this.pod, + this.potenza, + this.tensione, + this.contrattiEnelLuce, + required this.fornitura, + }); + + final String? uuid; + + final String pod; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + final _i2.FornituraCreateNestedOneWithoutFornituraLuceInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput({ + this.uuid, + required this.pod, + required this.fornituraUuid, + this.potenza, + this.tensione, + this.contrattiEnelLuce, + }); + + final String? uuid; + + final String pod; + + final String fornituraUuid; + + final _i1.PrismaUnion? potenza; + + final _i1.PrismaUnion? tensione; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutFornituraLuceInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceCreateOrConnectWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateOrConnectWithoutConsumoAnnuoLuceInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraLuceWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraLuceCreateNestedOneWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceCreateNestedOneWithoutConsumoAnnuoLuceInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutConsumoAnnuoLuceInput? + connectOrCreate; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ConsumoAnnuoLuceCreateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCreateInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraLuce, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final _i2.FornituraLuceCreateNestedOneWithoutConsumoAnnuoLuceInput + fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuce': fornituraLuce, + }; +} + +class ConsumoAnnuoLuceUncheckedCreateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedCreateInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraLuceUuid, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final String fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceCreateManyInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCreateManyInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraLuceUuid, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final String fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class FornituraLuceUpdateWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateWithoutConsumoAnnuoLuceInput({ + this.uuid, + this.pod, + this.potenza, + this.tensione, + this.contrattiEnelLuce, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ContrattoEnelLuceUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraLuceNestedInput? + fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'potenza': potenza, + 'tensione': tensione, + 'contrattiEnelLuce': contrattiEnelLuce, + 'fornitura': fornitura, + }; +} + +class FornituraLuceUncheckedUpdateWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUncheckedUpdateWithoutConsumoAnnuoLuceInput({ + this.uuid, + this.pod, + this.fornituraUuid, + this.potenza, + this.tensione, + this.contrattiEnelLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pod; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? potenza; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? tensione; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutFornituraLuceNestedInput? + contrattiEnelLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'pod': pod, + 'fornituraUuid': fornituraUuid, + 'potenza': potenza, + 'tensione': tensione, + 'contrattiEnelLuce': contrattiEnelLuce, + }; +} + +class FornituraLuceUpsertWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpsertWithoutConsumoAnnuoLuceInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutConsumoAnnuoLuceInput> update; + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput> create; + + final _i2.FornituraLuceWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraLuceUpdateToOneWithWhereWithoutConsumoAnnuoLuceInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateToOneWithWhereWithoutConsumoAnnuoLuceInput({ + this.where, + required this.data, + }); + + final _i2.FornituraLuceWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutConsumoAnnuoLuceInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraLuceUpdateOneRequiredWithoutConsumoAnnuoLuceNestedInput + implements _i1.JsonConvertible> { + const FornituraLuceUpdateOneRequiredWithoutConsumoAnnuoLuceNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraLuceCreateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedCreateWithoutConsumoAnnuoLuceInput>? create; + + final _i2.FornituraLuceCreateOrConnectWithoutConsumoAnnuoLuceInput? + connectOrCreate; + + final _i2.FornituraLuceUpsertWithoutConsumoAnnuoLuceInput? upsert; + + final _i2.FornituraLuceWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraLuceUpdateToOneWithWhereWithoutConsumoAnnuoLuceInput, + _i1.PrismaUnion<_i2.FornituraLuceUpdateWithoutConsumoAnnuoLuceInput, + _i2.FornituraLuceUncheckedUpdateWithoutConsumoAnnuoLuceInput>>? + update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ConsumoAnnuoLuceUpdateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpdateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuce, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i2.FornituraLuceUpdateOneRequiredWithoutConsumoAnnuoLuceNestedInput? + fornituraLuce; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuce': fornituraLuce, + }; +} + +class ConsumoAnnuoLuceUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedUpdateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUpdateManyMutationInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoLuceUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceUncheckedUpdateManyInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceCountAggregateOutputType { + const ConsumoAnnuoLuceCountAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.$all, + }); + + factory ConsumoAnnuoLuceCountAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoLuceCountAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraLuceUuid: json['fornituraLuceUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? consumo; + + final int? meseRiferimentoConsumoAnnuo; + + final int? fornituraLuceUuid; + + final int? $all; +} + +class ConsumoAnnuoLuceAvgAggregateOutputType { + const ConsumoAnnuoLuceAvgAggregateOutputType({this.consumo}); + + factory ConsumoAnnuoLuceAvgAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoLuceAvgAggregateOutputType(consumo: json['consumo']); + + final double? consumo; +} + +class ConsumoAnnuoLuceSumAggregateOutputType { + const ConsumoAnnuoLuceSumAggregateOutputType({this.consumo}); + + factory ConsumoAnnuoLuceSumAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoLuceSumAggregateOutputType(consumo: json['consumo']); + + final double? consumo; +} + +class ConsumoAnnuoLuceMinAggregateOutputType { + const ConsumoAnnuoLuceMinAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + factory ConsumoAnnuoLuceMinAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoLuceMinAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraLuceUuid: json['fornituraLuceUuid'], + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraLuceUuid; +} + +class ConsumoAnnuoLuceMaxAggregateOutputType { + const ConsumoAnnuoLuceMaxAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + factory ConsumoAnnuoLuceMaxAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoLuceMaxAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraLuceUuid: json['fornituraLuceUuid'], + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraLuceUuid; +} + +class ConsumoAnnuoLuceGroupByOutputType { + const ConsumoAnnuoLuceGroupByOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory ConsumoAnnuoLuceGroupByOutputType.fromJson(Map json) => + ConsumoAnnuoLuceGroupByOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraLuceUuid: json['fornituraLuceUuid'], + $count: json['_count'] is Map + ? _i2.ConsumoAnnuoLuceCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ConsumoAnnuoLuceAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ConsumoAnnuoLuceSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ConsumoAnnuoLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ConsumoAnnuoLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraLuceUuid; + + final _i2.ConsumoAnnuoLuceCountAggregateOutputType? $count; + + final _i2.ConsumoAnnuoLuceAvgAggregateOutputType? $avg; + + final _i2.ConsumoAnnuoLuceSumAggregateOutputType? $sum; + + final _i2.ConsumoAnnuoLuceMinAggregateOutputType? $min; + + final _i2.ConsumoAnnuoLuceMaxAggregateOutputType? $max; +} + +class ConsumoAnnuoLuceCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCountOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceAvgOrderByAggregateInput({this.consumo}); + + final _i2.SortOrder? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoLuceMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceMaxOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceMinOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceSumOrderByAggregateInput({this.consumo}); + + final _i2.SortOrder? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoLuceOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceOrderByWithAggregationInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.ConsumoAnnuoLuceCountOrderByAggregateInput? $count; + + final _i2.ConsumoAnnuoLuceAvgOrderByAggregateInput? $avg; + + final _i2.ConsumoAnnuoLuceMaxOrderByAggregateInput? $max; + + final _i2.ConsumoAnnuoLuceMinOrderByAggregateInput? $min; + + final _i2.ConsumoAnnuoLuceSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedFloatWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedFloatWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedFloatFilter? $avg; + + final _i2.NestedFloatFilter? $sum; + + final _i2.NestedFloatFilter? $min; + + final _i2.NestedFloatFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class FloatWithAggregatesFilter + implements _i1.JsonConvertible> { + const FloatWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedFloatFilter? $avg; + + final _i2.NestedFloatFilter? $sum; + + final _i2.NestedFloatFilter? $min; + + final _i2.NestedFloatFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class NestedDateTimeWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedDateTimeWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedDateTimeFilter? $min; + + final _i2.NestedDateTimeFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class DateTimeWithAggregatesFilter + implements _i1.JsonConvertible> { + const DateTimeWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedDateTimeFilter? $min; + + final _i2.NestedDateTimeFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ConsumoAnnuoLuceScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceScalarWhereWithAggregatesInput, + Iterable<_i2.ConsumoAnnuoLuceScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoLuceScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoLuceScalarWhereWithAggregatesInput, + Iterable<_i2.ConsumoAnnuoLuceScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + fornituraLuceUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceCountAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.$all, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraLuceUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + '_all': $all, + }; +} + +class ConsumoAnnuoLuceGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeCountArgs({this.select}); + + final _i2.ConsumoAnnuoLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoLuceAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceAvgAggregateOutputTypeSelect({this.consumo}); + + final bool? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoLuceGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeAvgArgs({this.select}); + + final _i2.ConsumoAnnuoLuceAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoLuceSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceSumAggregateOutputTypeSelect({this.consumo}); + + final bool? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoLuceGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeSumArgs({this.select}); + + final _i2.ConsumoAnnuoLuceSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoLuceMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceMinAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeMinArgs({this.select}); + + final _i2.ConsumoAnnuoLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoLuceMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceMaxAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraLuceUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + }; +} + +class ConsumoAnnuoLuceGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ConsumoAnnuoLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoLuceGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoLuceGroupByOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraLuceUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraLuceUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $avg; + + final _i1.PrismaUnion? + $sum; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraLuceUuid': fornituraLuceUuid, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateConsumoAnnuoLuce { + const AggregateConsumoAnnuoLuce({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateConsumoAnnuoLuce.fromJson(Map json) => + AggregateConsumoAnnuoLuce( + $count: json['_count'] is Map + ? _i2.ConsumoAnnuoLuceCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ConsumoAnnuoLuceAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ConsumoAnnuoLuceSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ConsumoAnnuoLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ConsumoAnnuoLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ConsumoAnnuoLuceCountAggregateOutputType? $count; + + final _i2.ConsumoAnnuoLuceAvgAggregateOutputType? $avg; + + final _i2.ConsumoAnnuoLuceSumAggregateOutputType? $sum; + + final _i2.ConsumoAnnuoLuceMinAggregateOutputType? $min; + + final _i2.ConsumoAnnuoLuceMaxAggregateOutputType? $max; +} + +class AggregateConsumoAnnuoLuceCountArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceCountArgs({this.select}); + + final _i2.ConsumoAnnuoLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoLuceAvgArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceAvgArgs({this.select}); + + final _i2.ConsumoAnnuoLuceAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoLuceSumArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceSumArgs({this.select}); + + final _i2.ConsumoAnnuoLuceSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoLuceMinArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceMinArgs({this.select}); + + final _i2.ConsumoAnnuoLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoLuceMaxArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceMaxArgs({this.select}); + + final _i2.ConsumoAnnuoLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoLuceSelect + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoLuceSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class FornituraGasCreateInput + implements _i1.JsonConvertible> { + const FornituraGasCreateInput({ + this.uuid, + required this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + required this.fornitura, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + final _i2.FornituraCreateNestedOneWithoutFornituraGasInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedCreateInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? classeMisuratoreGasId; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasCreateManyInput + implements _i1.JsonConvertible> { + const FornituraGasCreateManyInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? classeMisuratoreGasId; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasUpdateInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput? + classeMisuratore; + + final _i2.ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraGasNestedInput? fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedUpdateInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? classeMisuratoreGasId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasUpdateManyMutationInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateManyMutationInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateManyInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? classeMisuratoreGasId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasCountAggregateOutputType { + const FornituraGasCountAggregateOutputType({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.$all, + }); + + factory FornituraGasCountAggregateOutputType.fromJson(Map json) => + FornituraGasCountAggregateOutputType( + uuid: json['uuid'], + pdr: json['pdr'], + fornituraUuid: json['fornituraUuid'], + classeMisuratoreGasId: json['classeMisuratoreGasId'], + matricolaContatore: json['matricolaContatore'], + remi: json['remi'], + $all: json['_all'], + ); + + final int? uuid; + + final int? pdr; + + final int? fornituraUuid; + + final int? classeMisuratoreGasId; + + final int? matricolaContatore; + + final int? remi; + + final int? $all; +} + +class FornituraGasMinAggregateOutputType { + const FornituraGasMinAggregateOutputType({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + factory FornituraGasMinAggregateOutputType.fromJson(Map json) => + FornituraGasMinAggregateOutputType( + uuid: json['uuid'], + pdr: json['pdr'], + fornituraUuid: json['fornituraUuid'], + classeMisuratoreGasId: json['classeMisuratoreGasId'], + matricolaContatore: json['matricolaContatore'], + remi: json['remi'], + ); + + final String? uuid; + + final String? pdr; + + final String? fornituraUuid; + + final String? classeMisuratoreGasId; + + final String? matricolaContatore; + + final String? remi; +} + +class FornituraGasMaxAggregateOutputType { + const FornituraGasMaxAggregateOutputType({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + factory FornituraGasMaxAggregateOutputType.fromJson(Map json) => + FornituraGasMaxAggregateOutputType( + uuid: json['uuid'], + pdr: json['pdr'], + fornituraUuid: json['fornituraUuid'], + classeMisuratoreGasId: json['classeMisuratoreGasId'], + matricolaContatore: json['matricolaContatore'], + remi: json['remi'], + ); + + final String? uuid; + + final String? pdr; + + final String? fornituraUuid; + + final String? classeMisuratoreGasId; + + final String? matricolaContatore; + + final String? remi; +} + +class FornituraGasGroupByOutputType { + const FornituraGasGroupByOutputType({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.$count, + this.$min, + this.$max, + }); + + factory FornituraGasGroupByOutputType.fromJson(Map json) => + FornituraGasGroupByOutputType( + uuid: json['uuid'], + pdr: json['pdr'], + fornituraUuid: json['fornituraUuid'], + classeMisuratoreGasId: json['classeMisuratoreGasId'], + matricolaContatore: json['matricolaContatore'], + remi: json['remi'], + $count: json['_count'] is Map + ? _i2.FornituraGasCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? pdr; + + final String? fornituraUuid; + + final String? classeMisuratoreGasId; + + final String? matricolaContatore; + + final String? remi; + + final _i2.FornituraGasCountAggregateOutputType? $count; + + final _i2.FornituraGasMinAggregateOutputType? $min; + + final _i2.FornituraGasMaxAggregateOutputType? $max; +} + +class FornituraGasCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraGasCountOrderByAggregateInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pdr; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? classeMisuratoreGasId; + + final _i2.SortOrder? matricolaContatore; + + final _i2.SortOrder? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraGasMaxOrderByAggregateInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pdr; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? classeMisuratoreGasId; + + final _i2.SortOrder? matricolaContatore; + + final _i2.SortOrder? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornituraGasMinOrderByAggregateInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pdr; + + final _i2.SortOrder? fornituraUuid; + + final _i2.SortOrder? classeMisuratoreGasId; + + final _i2.SortOrder? matricolaContatore; + + final _i2.SortOrder? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const FornituraGasOrderByWithAggregationInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? pdr; + + final _i2.SortOrder? fornituraUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? matricolaContatore; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? remi; + + final _i2.FornituraGasCountOrderByAggregateInput? $count; + + final _i2.FornituraGasMaxOrderByAggregateInput? $max; + + final _i2.FornituraGasMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class FornituraGasScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const FornituraGasScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraGasScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.FornituraGasScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereWithAggregatesInput, + Iterable<_i2.FornituraGasScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? pdr; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? fornituraUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? matricolaContatore; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? remi; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGasCountAggregateOutputTypeSelect({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.$all, + }); + + final bool? uuid; + + final bool? pdr; + + final bool? fornituraUuid; + + final bool? classeMisuratoreGasId; + + final bool? matricolaContatore; + + final bool? remi; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + '_all': $all, + }; +} + +class FornituraGasGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const FornituraGasGroupByOutputTypeCountArgs({this.select}); + + final _i2.FornituraGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraGasMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGasMinAggregateOutputTypeSelect({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final bool? uuid; + + final bool? pdr; + + final bool? fornituraUuid; + + final bool? classeMisuratoreGasId; + + final bool? matricolaContatore; + + final bool? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const FornituraGasGroupByOutputTypeMinArgs({this.select}); + + final _i2.FornituraGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraGasMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGasMaxAggregateOutputTypeSelect({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final bool? uuid; + + final bool? pdr; + + final bool? fornituraUuid; + + final bool? classeMisuratoreGasId; + + final bool? matricolaContatore; + + final bool? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const FornituraGasGroupByOutputTypeMaxArgs({this.select}); + + final _i2.FornituraGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornituraGasGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const FornituraGasGroupByOutputTypeSelect({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? pdr; + + final bool? fornituraUuid; + + final bool? classeMisuratoreGasId; + + final bool? matricolaContatore; + + final bool? remi; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateFornituraGas { + const AggregateFornituraGas({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateFornituraGas.fromJson(Map json) => AggregateFornituraGas( + $count: json['_count'] is Map + ? _i2.FornituraGasCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornituraGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornituraGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.FornituraGasCountAggregateOutputType? $count; + + final _i2.FornituraGasMinAggregateOutputType? $min; + + final _i2.FornituraGasMaxAggregateOutputType? $max; +} + +class AggregateFornituraGasCountArgs + implements _i1.JsonConvertible> { + const AggregateFornituraGasCountArgs({this.select}); + + final _i2.FornituraGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraGasMinArgs + implements _i1.JsonConvertible> { + const AggregateFornituraGasMinArgs({this.select}); + + final _i2.FornituraGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraGasMaxArgs + implements _i1.JsonConvertible> { + const AggregateFornituraGasMaxArgs({this.select}); + + final _i2.FornituraGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornituraGasSelect + implements _i1.JsonConvertible> { + const AggregateFornituraGasSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum ConsumoAnnuoGasScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'ConsumoAnnuoGas'), + consumo('consumo', 'ConsumoAnnuoGas'), + meseRiferimentoConsumoAnnuo( + 'meseRiferimentoConsumoAnnuo', 'ConsumoAnnuoGas'), + fornituraGasUuid('fornituraGasUuid', 'ConsumoAnnuoGas'); + + const ConsumoAnnuoGasScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornituraGasCreateWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateWithoutConsumoAnnuoGasInput({ + this.uuid, + required this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.contrattiEnelGas, + required this.fornitura, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ClasseMisuratoreGasCreateNestedOneWithoutFornituraGasInput? + classeMisuratore; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + final _i2.FornituraCreateNestedOneWithoutFornituraGasInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.contrattiEnelGas, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? classeMisuratoreGasId; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasCreateOrConnectWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateOrConnectWithoutConsumoAnnuoGasInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraGasCreateNestedOneWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasCreateNestedOneWithoutConsumoAnnuoGasInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutConsumoAnnuoGasInput? + connectOrCreate; + + final _i2.FornituraGasWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class ConsumoAnnuoGasCreateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCreateInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraGas, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final _i2.FornituraGasCreateNestedOneWithoutConsumoAnnuoGasInput fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGas': fornituraGas, + }; +} + +class ConsumoAnnuoGasUncheckedCreateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedCreateInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraGasUuid, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final String fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasCreateManyInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCreateManyInput({ + this.uuid, + required this.consumo, + required this.meseRiferimentoConsumoAnnuo, + required this.fornituraGasUuid, + }); + + final String? uuid; + + final double consumo; + + final DateTime meseRiferimentoConsumoAnnuo; + + final String fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class FornituraGasUpdateWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateWithoutConsumoAnnuoGasInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + this.classeMisuratore, + this.contrattiEnelGas, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ClasseMisuratoreGasUpdateOneWithoutFornituraGasNestedInput? + classeMisuratore; + + final _i2.ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraGasNestedInput? fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'classeMisuratore': classeMisuratore, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedUpdateWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateWithoutConsumoAnnuoGasInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + this.contrattiEnelGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? classeMisuratoreGasId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasUpsertWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpsertWithoutConsumoAnnuoGasInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedUpdateWithoutConsumoAnnuoGasInput> update; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput> create; + + final _i2.FornituraGasWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class FornituraGasUpdateToOneWithWhereWithoutConsumoAnnuoGasInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateToOneWithWhereWithoutConsumoAnnuoGasInput({ + this.where, + required this.data, + }); + + final _i2.FornituraGasWhereInput? where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedUpdateWithoutConsumoAnnuoGasInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraGasUpdateOneRequiredWithoutConsumoAnnuoGasNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateOneRequiredWithoutConsumoAnnuoGasNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedCreateWithoutConsumoAnnuoGasInput>? create; + + final _i2.FornituraGasCreateOrConnectWithoutConsumoAnnuoGasInput? + connectOrCreate; + + final _i2.FornituraGasUpsertWithoutConsumoAnnuoGasInput? upsert; + + final _i2.FornituraGasWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateToOneWithWhereWithoutConsumoAnnuoGasInput, + _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutConsumoAnnuoGasInput, + _i2.FornituraGasUncheckedUpdateWithoutConsumoAnnuoGasInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class ConsumoAnnuoGasUpdateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpdateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i2.FornituraGasUpdateOneRequiredWithoutConsumoAnnuoGasNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGas': fornituraGas, + }; +} + +class ConsumoAnnuoGasUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedUpdateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion? + fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUpdateManyMutationInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + }; +} + +class ConsumoAnnuoGasUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasUncheckedUpdateManyInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? consumo; + + final _i1.PrismaUnion? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion? + fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasCountAggregateOutputType { + const ConsumoAnnuoGasCountAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.$all, + }); + + factory ConsumoAnnuoGasCountAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoGasCountAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraGasUuid: json['fornituraGasUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? consumo; + + final int? meseRiferimentoConsumoAnnuo; + + final int? fornituraGasUuid; + + final int? $all; +} + +class ConsumoAnnuoGasAvgAggregateOutputType { + const ConsumoAnnuoGasAvgAggregateOutputType({this.consumo}); + + factory ConsumoAnnuoGasAvgAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoGasAvgAggregateOutputType(consumo: json['consumo']); + + final double? consumo; +} + +class ConsumoAnnuoGasSumAggregateOutputType { + const ConsumoAnnuoGasSumAggregateOutputType({this.consumo}); + + factory ConsumoAnnuoGasSumAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoGasSumAggregateOutputType(consumo: json['consumo']); + + final double? consumo; +} + +class ConsumoAnnuoGasMinAggregateOutputType { + const ConsumoAnnuoGasMinAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + factory ConsumoAnnuoGasMinAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoGasMinAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraGasUuid: json['fornituraGasUuid'], + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraGasUuid; +} + +class ConsumoAnnuoGasMaxAggregateOutputType { + const ConsumoAnnuoGasMaxAggregateOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + factory ConsumoAnnuoGasMaxAggregateOutputType.fromJson(Map json) => + ConsumoAnnuoGasMaxAggregateOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraGasUuid: json['fornituraGasUuid'], + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraGasUuid; +} + +class ConsumoAnnuoGasGroupByOutputType { + const ConsumoAnnuoGasGroupByOutputType({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory ConsumoAnnuoGasGroupByOutputType.fromJson(Map json) => + ConsumoAnnuoGasGroupByOutputType( + uuid: json['uuid'], + consumo: json['consumo'], + meseRiferimentoConsumoAnnuo: json['meseRiferimentoConsumoAnnuo'], + fornituraGasUuid: json['fornituraGasUuid'], + $count: json['_count'] is Map + ? _i2.ConsumoAnnuoGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ConsumoAnnuoGasAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ConsumoAnnuoGasSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ConsumoAnnuoGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ConsumoAnnuoGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final double? consumo; + + final DateTime? meseRiferimentoConsumoAnnuo; + + final String? fornituraGasUuid; + + final _i2.ConsumoAnnuoGasCountAggregateOutputType? $count; + + final _i2.ConsumoAnnuoGasAvgAggregateOutputType? $avg; + + final _i2.ConsumoAnnuoGasSumAggregateOutputType? $sum; + + final _i2.ConsumoAnnuoGasMinAggregateOutputType? $min; + + final _i2.ConsumoAnnuoGasMaxAggregateOutputType? $max; +} + +class ConsumoAnnuoGasCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCountOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasAvgOrderByAggregateInput({this.consumo}); + + final _i2.SortOrder? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoGasMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasMaxOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasMinOrderByAggregateInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasSumOrderByAggregateInput({this.consumo}); + + final _i2.SortOrder? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoGasOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasOrderByWithAggregationInput({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? consumo; + + final _i2.SortOrder? meseRiferimentoConsumoAnnuo; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.ConsumoAnnuoGasCountOrderByAggregateInput? $count; + + final _i2.ConsumoAnnuoGasAvgOrderByAggregateInput? $avg; + + final _i2.ConsumoAnnuoGasMaxOrderByAggregateInput? $max; + + final _i2.ConsumoAnnuoGasMinOrderByAggregateInput? $min; + + final _i2.ConsumoAnnuoGasSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class ConsumoAnnuoGasScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasScalarWhereWithAggregatesInput, + Iterable<_i2.ConsumoAnnuoGasScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ConsumoAnnuoGasScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ConsumoAnnuoGasScalarWhereWithAggregatesInput, + Iterable<_i2.ConsumoAnnuoGasScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? consumo; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + meseRiferimentoConsumoAnnuo; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + fornituraGasUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasCountAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.$all, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraGasUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + '_all': $all, + }; +} + +class ConsumoAnnuoGasGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeCountArgs({this.select}); + + final _i2.ConsumoAnnuoGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoGasAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasAvgAggregateOutputTypeSelect({this.consumo}); + + final bool? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoGasGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeAvgArgs({this.select}); + + final _i2.ConsumoAnnuoGasAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoGasSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasSumAggregateOutputTypeSelect({this.consumo}); + + final bool? consumo; + + @override + Map toJson() => {'consumo': consumo}; +} + +class ConsumoAnnuoGasGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeSumArgs({this.select}); + + final _i2.ConsumoAnnuoGasSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoGasMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasMinAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeMinArgs({this.select}); + + final _i2.ConsumoAnnuoGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoGasMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasMaxAggregateOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraGasUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + }; +} + +class ConsumoAnnuoGasGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ConsumoAnnuoGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ConsumoAnnuoGasGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ConsumoAnnuoGasGroupByOutputTypeSelect({ + this.uuid, + this.consumo, + this.meseRiferimentoConsumoAnnuo, + this.fornituraGasUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? consumo; + + final bool? meseRiferimentoConsumoAnnuo; + + final bool? fornituraGasUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $avg; + + final _i1.PrismaUnion? + $sum; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'consumo': consumo, + 'meseRiferimentoConsumoAnnuo': meseRiferimentoConsumoAnnuo, + 'fornituraGasUuid': fornituraGasUuid, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateConsumoAnnuoGas { + const AggregateConsumoAnnuoGas({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateConsumoAnnuoGas.fromJson(Map json) => + AggregateConsumoAnnuoGas( + $count: json['_count'] is Map + ? _i2.ConsumoAnnuoGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ConsumoAnnuoGasAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ConsumoAnnuoGasSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ConsumoAnnuoGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ConsumoAnnuoGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ConsumoAnnuoGasCountAggregateOutputType? $count; + + final _i2.ConsumoAnnuoGasAvgAggregateOutputType? $avg; + + final _i2.ConsumoAnnuoGasSumAggregateOutputType? $sum; + + final _i2.ConsumoAnnuoGasMinAggregateOutputType? $min; + + final _i2.ConsumoAnnuoGasMaxAggregateOutputType? $max; +} + +class AggregateConsumoAnnuoGasCountArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasCountArgs({this.select}); + + final _i2.ConsumoAnnuoGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoGasAvgArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasAvgArgs({this.select}); + + final _i2.ConsumoAnnuoGasAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoGasSumArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasSumArgs({this.select}); + + final _i2.ConsumoAnnuoGasSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoGasMinArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasMinArgs({this.select}); + + final _i2.ConsumoAnnuoGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoGasMaxArgs + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasMaxArgs({this.select}); + + final _i2.ConsumoAnnuoGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateConsumoAnnuoGasSelect + implements _i1.JsonConvertible> { + const AggregateConsumoAnnuoGasSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoCreateInput + implements _i1.JsonConvertible> { + const ContrattoCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + required this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiInput stato; + + final _i2.SoggettoCreateNestedOneWithoutContrattiInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutContrattiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutContrattiInput? negozio; + + final _i2.PraticaCreateNestedOneWithoutContrattoInput? pratica; + + final _i2.ModuloContrattoCreateNestedOneWithoutContrattiInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedCreateInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutContrattoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoCreateManyInput + implements _i1.JsonConvertible> { + const ContrattoCreateManyInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + required this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? dataAttivazione; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? trend; + + final _i1.PrismaUnion? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final _i1.PrismaUnion? dataCessazione; + + final _i1.PrismaUnion? mesiDurata; + + final _i1.PrismaUnion? offertaUuid; + + final String statoContrattoId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? praticaUuid; + + final _i1.PrismaUnion? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoUpdateInput + implements _i1.JsonConvertible> { + const ContrattoUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.stato, + this.soggetto, + this.utente, + this.negozio, + this.pratica, + this.modulo, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i2.ContrattoEnelLuceUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiNestedInput? stato; + + final _i2.SoggettoUpdateOneWithoutContrattiNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutContrattiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutContrattiNestedInput? negozio; + + final _i2.PraticaUpdateOneWithoutContrattoNestedInput? pratica; + + final _i2.ModuloContrattoUpdateOneWithoutContrattiNestedInput? modulo; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'stato': stato, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'pratica': pratica, + 'modulo': modulo, + }; +} + +class ContrattoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutContrattoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class ContrattoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ContrattoUncheckedUpdateManyInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAttivazione; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NullableBoolFieldUpdateOperationsInput, + _i1.PrismaNull>>? trend; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i1.PrismaUnion? + marketingEnelEnergia; + + final _i1.PrismaUnion? + marketingGruppoEnel; + + final _i1.PrismaUnion? + profilazioneEnelEnergia; + + final _i1.PrismaUnion? bollettaWeb; + + final _i1.PrismaUnion? rid; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataCessazione; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? mesiDurata; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? praticaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCountAggregateOutputType { + const ContrattoCountAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.$all, + }); + + factory ContrattoCountAggregateOutputType.fromJson(Map json) => + ContrattoCountAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + dataAttivazione: json['dataAttivazione'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + trend: json['trend'], + nota: json['nota'], + marketingEnelEnergia: json['marketingEnelEnergia'], + marketingGruppoEnel: json['marketingGruppoEnel'], + profilazioneEnelEnergia: json['profilazioneEnelEnergia'], + bollettaWeb: json['bollettaWeb'], + rid: json['rid'], + dataCessazione: json['dataCessazione'], + mesiDurata: json['mesiDurata'], + offertaUuid: json['offertaUuid'], + statoContrattoId: json['statoContrattoId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + praticaUuid: json['praticaUuid'], + moduloContrattoId: json['moduloContrattoId'], + $all: json['_all'], + ); + + final int? uuid; + + final int? codice; + + final int? dataInserimento; + + final int? dataAttivazione; + + final int? ultimoAggiornamentoStato; + + final int? trend; + + final int? nota; + + final int? marketingEnelEnergia; + + final int? marketingGruppoEnel; + + final int? profilazioneEnelEnergia; + + final int? bollettaWeb; + + final int? rid; + + final int? dataCessazione; + + final int? mesiDurata; + + final int? offertaUuid; + + final int? statoContrattoId; + + final int? soggettoUuid; + + final int? utenteUuid; + + final int? negozioCodice; + + final int? praticaUuid; + + final int? moduloContrattoId; + + final int? $all; +} + +class ContrattoAvgAggregateOutputType { + const ContrattoAvgAggregateOutputType({this.mesiDurata}); + + factory ContrattoAvgAggregateOutputType.fromJson(Map json) => + ContrattoAvgAggregateOutputType(mesiDurata: json['mesiDurata']); + + final double? mesiDurata; +} + +class ContrattoSumAggregateOutputType { + const ContrattoSumAggregateOutputType({this.mesiDurata}); + + factory ContrattoSumAggregateOutputType.fromJson(Map json) => + ContrattoSumAggregateOutputType(mesiDurata: json['mesiDurata']); + + final int? mesiDurata; +} + +class ContrattoMinAggregateOutputType { + const ContrattoMinAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + factory ContrattoMinAggregateOutputType.fromJson(Map json) => + ContrattoMinAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + dataAttivazione: json['dataAttivazione'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + trend: json['trend'], + nota: json['nota'], + marketingEnelEnergia: json['marketingEnelEnergia'], + marketingGruppoEnel: json['marketingGruppoEnel'], + profilazioneEnelEnergia: json['profilazioneEnelEnergia'], + bollettaWeb: json['bollettaWeb'], + rid: json['rid'], + dataCessazione: json['dataCessazione'], + mesiDurata: json['mesiDurata'], + offertaUuid: json['offertaUuid'], + statoContrattoId: json['statoContrattoId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + praticaUuid: json['praticaUuid'], + moduloContrattoId: json['moduloContrattoId'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final DateTime? dataAttivazione; + + final DateTime? ultimoAggiornamentoStato; + + final bool? trend; + + final String? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final DateTime? dataCessazione; + + final int? mesiDurata; + + final String? offertaUuid; + + final String? statoContrattoId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? praticaUuid; + + final String? moduloContrattoId; +} + +class ContrattoMaxAggregateOutputType { + const ContrattoMaxAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + factory ContrattoMaxAggregateOutputType.fromJson(Map json) => + ContrattoMaxAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + dataAttivazione: json['dataAttivazione'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + trend: json['trend'], + nota: json['nota'], + marketingEnelEnergia: json['marketingEnelEnergia'], + marketingGruppoEnel: json['marketingGruppoEnel'], + profilazioneEnelEnergia: json['profilazioneEnelEnergia'], + bollettaWeb: json['bollettaWeb'], + rid: json['rid'], + dataCessazione: json['dataCessazione'], + mesiDurata: json['mesiDurata'], + offertaUuid: json['offertaUuid'], + statoContrattoId: json['statoContrattoId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + praticaUuid: json['praticaUuid'], + moduloContrattoId: json['moduloContrattoId'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final DateTime? dataAttivazione; + + final DateTime? ultimoAggiornamentoStato; + + final bool? trend; + + final String? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final DateTime? dataCessazione; + + final int? mesiDurata; + + final String? offertaUuid; + + final String? statoContrattoId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? praticaUuid; + + final String? moduloContrattoId; +} + +class ContrattoGroupByOutputType { + const ContrattoGroupByOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory ContrattoGroupByOutputType.fromJson(Map json) => + ContrattoGroupByOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + dataAttivazione: json['dataAttivazione'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + trend: json['trend'], + nota: json['nota'], + marketingEnelEnergia: json['marketingEnelEnergia'], + marketingGruppoEnel: json['marketingGruppoEnel'], + profilazioneEnelEnergia: json['profilazioneEnelEnergia'], + bollettaWeb: json['bollettaWeb'], + rid: json['rid'], + dataCessazione: json['dataCessazione'], + mesiDurata: json['mesiDurata'], + offertaUuid: json['offertaUuid'], + statoContrattoId: json['statoContrattoId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + praticaUuid: json['praticaUuid'], + moduloContrattoId: json['moduloContrattoId'], + $count: json['_count'] is Map + ? _i2.ContrattoCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ContrattoAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ContrattoSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final DateTime? dataAttivazione; + + final DateTime? ultimoAggiornamentoStato; + + final bool? trend; + + final String? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final DateTime? dataCessazione; + + final int? mesiDurata; + + final String? offertaUuid; + + final String? statoContrattoId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? praticaUuid; + + final String? moduloContrattoId; + + final _i2.ContrattoCountAggregateOutputType? $count; + + final _i2.ContrattoAvgAggregateOutputType? $avg; + + final _i2.ContrattoSumAggregateOutputType? $sum; + + final _i2.ContrattoMinAggregateOutputType? $min; + + final _i2.ContrattoMaxAggregateOutputType? $max; +} + +class ContrattoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoCountOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataAttivazione; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + final _i2.SortOrder? trend; + + final _i2.SortOrder? nota; + + final _i2.SortOrder? marketingEnelEnergia; + + final _i2.SortOrder? marketingGruppoEnel; + + final _i2.SortOrder? profilazioneEnelEnergia; + + final _i2.SortOrder? bollettaWeb; + + final _i2.SortOrder? rid; + + final _i2.SortOrder? dataCessazione; + + final _i2.SortOrder? mesiDurata; + + final _i2.SortOrder? offertaUuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? praticaUuid; + + final _i2.SortOrder? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoAvgOrderByAggregateInput({this.mesiDurata}); + + final _i2.SortOrder? mesiDurata; + + @override + Map toJson() => {'mesiDurata': mesiDurata}; +} + +class ContrattoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoMaxOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataAttivazione; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + final _i2.SortOrder? trend; + + final _i2.SortOrder? nota; + + final _i2.SortOrder? marketingEnelEnergia; + + final _i2.SortOrder? marketingGruppoEnel; + + final _i2.SortOrder? profilazioneEnelEnergia; + + final _i2.SortOrder? bollettaWeb; + + final _i2.SortOrder? rid; + + final _i2.SortOrder? dataCessazione; + + final _i2.SortOrder? mesiDurata; + + final _i2.SortOrder? offertaUuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? praticaUuid; + + final _i2.SortOrder? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoMinOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataAttivazione; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + final _i2.SortOrder? trend; + + final _i2.SortOrder? nota; + + final _i2.SortOrder? marketingEnelEnergia; + + final _i2.SortOrder? marketingGruppoEnel; + + final _i2.SortOrder? profilazioneEnelEnergia; + + final _i2.SortOrder? bollettaWeb; + + final _i2.SortOrder? rid; + + final _i2.SortOrder? dataCessazione; + + final _i2.SortOrder? mesiDurata; + + final _i2.SortOrder? offertaUuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? praticaUuid; + + final _i2.SortOrder? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoSumOrderByAggregateInput({this.mesiDurata}); + + final _i2.SortOrder? mesiDurata; + + @override + Map toJson() => {'mesiDurata': mesiDurata}; +} + +class ContrattoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ContrattoOrderByWithAggregationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataAttivazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? trend; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? nota; + + final _i2.SortOrder? marketingEnelEnergia; + + final _i2.SortOrder? marketingGruppoEnel; + + final _i2.SortOrder? profilazioneEnelEnergia; + + final _i2.SortOrder? bollettaWeb; + + final _i2.SortOrder? rid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataCessazione; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? mesiDurata; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.SortOrder? statoContrattoId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? praticaUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? moduloContrattoId; + + final _i2.ContrattoCountOrderByAggregateInput? $count; + + final _i2.ContrattoAvgOrderByAggregateInput? $avg; + + final _i2.ContrattoMaxOrderByAggregateInput? $max; + + final _i2.ContrattoMinOrderByAggregateInput? $min; + + final _i2.ContrattoSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedDateTimeNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedDateTimeNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NestedDateTimeNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedDateTimeNullableFilter? $min; + + final _i2.NestedDateTimeNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class DateTimeNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const DateTimeNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NestedDateTimeNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedDateTimeNullableFilter? $min; + + final _i2.NestedDateTimeNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedBoolNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedBoolNullableWithAggregatesFilter({ + this.equals, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NestedBoolNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedBoolNullableFilter? $min; + + final _i2.NestedBoolNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class BoolNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const BoolNullableWithAggregatesFilter({ + this.equals, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion< + bool, + _i1.PrismaUnion<_i2.NestedBoolNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedBoolNullableFilter? $min; + + final _i2.NestedBoolNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedIntNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedIntNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NestedIntNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedFloatNullableFilter? $avg; + + final _i2.NestedIntNullableFilter? $sum; + + final _i2.NestedIntNullableFilter? $min; + + final _i2.NestedIntNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class IntNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const IntNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion, _i1.PrismaNull>>? + equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NestedIntNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedFloatNullableFilter? $avg; + + final _i2.NestedIntNullableFilter? $sum; + + final _i2.NestedIntNullableFilter? $min; + + final _i2.NestedIntNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ContrattoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ContrattoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataAttivazione; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + final _i1.PrismaUnion<_i2.BoolNullableWithAggregatesFilter, + _i1.PrismaUnion>? trend; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? nota; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? + marketingEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? + marketingGruppoEnel; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? + profilazioneEnelEnergia; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? bollettaWeb; + + final _i1.PrismaUnion<_i2.BoolWithAggregatesFilter, bool>? rid; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataCessazione; + + final _i1.PrismaUnion<_i2.IntNullableWithAggregatesFilter, + _i1.PrismaUnion>? mesiDurata; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? offertaUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoContrattoId; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? praticaUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? moduloContrattoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoCountAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.$all, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? dataAttivazione; + + final bool? ultimoAggiornamentoStato; + + final bool? trend; + + final bool? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final bool? dataCessazione; + + final bool? mesiDurata; + + final bool? offertaUuid; + + final bool? statoContrattoId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? praticaUuid; + + final bool? moduloContrattoId; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + '_all': $all, + }; +} + +class ContrattoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeCountArgs({this.select}); + + final _i2.ContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoAvgAggregateOutputTypeSelect({this.mesiDurata}); + + final bool? mesiDurata; + + @override + Map toJson() => {'mesiDurata': mesiDurata}; +} + +class ContrattoGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeAvgArgs({this.select}); + + final _i2.ContrattoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoSumAggregateOutputTypeSelect({this.mesiDurata}); + + final bool? mesiDurata; + + @override + Map toJson() => {'mesiDurata': mesiDurata}; +} + +class ContrattoGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeSumArgs({this.select}); + + final _i2.ContrattoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoMinAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? dataAttivazione; + + final bool? ultimoAggiornamentoStato; + + final bool? trend; + + final bool? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final bool? dataCessazione; + + final bool? mesiDurata; + + final bool? offertaUuid; + + final bool? statoContrattoId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? praticaUuid; + + final bool? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeMinArgs({this.select}); + + final _i2.ContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoMaxAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? dataAttivazione; + + final bool? ultimoAggiornamentoStato; + + final bool? trend; + + final bool? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final bool? dataCessazione; + + final bool? mesiDurata; + + final bool? offertaUuid; + + final bool? statoContrattoId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? praticaUuid; + + final bool? moduloContrattoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + }; +} + +class ContrattoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoGroupByOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.dataAttivazione, + this.ultimoAggiornamentoStato, + this.trend, + this.nota, + this.marketingEnelEnergia, + this.marketingGruppoEnel, + this.profilazioneEnelEnergia, + this.bollettaWeb, + this.rid, + this.dataCessazione, + this.mesiDurata, + this.offertaUuid, + this.statoContrattoId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.praticaUuid, + this.moduloContrattoId, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? dataAttivazione; + + final bool? ultimoAggiornamentoStato; + + final bool? trend; + + final bool? nota; + + final bool? marketingEnelEnergia; + + final bool? marketingGruppoEnel; + + final bool? profilazioneEnelEnergia; + + final bool? bollettaWeb; + + final bool? rid; + + final bool? dataCessazione; + + final bool? mesiDurata; + + final bool? offertaUuid; + + final bool? statoContrattoId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? praticaUuid; + + final bool? moduloContrattoId; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'dataAttivazione': dataAttivazione, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'trend': trend, + 'nota': nota, + 'marketingEnelEnergia': marketingEnelEnergia, + 'marketingGruppoEnel': marketingGruppoEnel, + 'profilazioneEnelEnergia': profilazioneEnelEnergia, + 'bollettaWeb': bollettaWeb, + 'rid': rid, + 'dataCessazione': dataCessazione, + 'mesiDurata': mesiDurata, + 'offertaUuid': offertaUuid, + 'statoContrattoId': statoContrattoId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'praticaUuid': praticaUuid, + 'moduloContrattoId': moduloContrattoId, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateContratto { + const AggregateContratto({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateContratto.fromJson(Map json) => AggregateContratto( + $count: json['_count'] is Map + ? _i2.ContrattoCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ContrattoAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ContrattoSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ContrattoCountAggregateOutputType? $count; + + final _i2.ContrattoAvgAggregateOutputType? $avg; + + final _i2.ContrattoSumAggregateOutputType? $sum; + + final _i2.ContrattoMinAggregateOutputType? $min; + + final _i2.ContrattoMaxAggregateOutputType? $max; +} + +class AggregateContrattoCountArgs + implements _i1.JsonConvertible> { + const AggregateContrattoCountArgs({this.select}); + + final _i2.ContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoAvgArgs + implements _i1.JsonConvertible> { + const AggregateContrattoAvgArgs({this.select}); + + final _i2.ContrattoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoSumArgs + implements _i1.JsonConvertible> { + const AggregateContrattoSumArgs({this.select}); + + final _i2.ContrattoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoMinArgs + implements _i1.JsonConvertible> { + const AggregateContrattoMinArgs({this.select}); + + final _i2.ContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoMaxArgs + implements _i1.JsonConvertible> { + const AggregateContrattoMaxArgs({this.select}); + + final _i2.ContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoSelect + implements _i1.JsonConvertible> { + const AggregateContrattoSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class ModuloContrattoCreateInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + this.serviziEwoCollegabili, + this.contratti, + required this.fornitore, + required this.tipoModulo, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ServizioEwoCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoCreateNestedManyWithoutModuloInput? contratti; + + final _i2.FornitoreCreateNestedOneWithoutModuliContrattoInput fornitore; + + final _i2.TipoModuloContrattoCreateNestedOneWithoutModuloContrattoInput + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoUncheckedCreateInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutModuloInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoCreateManyInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateManyInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + required this.tipoModuloContrattoId, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final String tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoUpdateInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + this.tipoModulo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ServizioEwoUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUpdateManyWithoutModuloNestedInput? contratti; + + final _i2.FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput? + fornitore; + + final _i2 + .TipoModuloContrattoUpdateOneRequiredWithoutModuloContrattoNestedInput? + tipoModulo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + 'tipoModulo': tipoModulo, + }; +} + +class ModuloContrattoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.serviziEwoCollegabili, + this.contratti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedUpdateManyWithoutModuloNestedInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i1.PrismaUnion? + tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoCountAggregateOutputType { + const ModuloContrattoCountAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.$all, + }); + + factory ModuloContrattoCountAggregateOutputType.fromJson(Map json) => + ModuloContrattoCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + clienteTarget: json['clienteTarget'], + canale: json['canale'], + tipoModuloContrattoId: json['tipoModuloContrattoId'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? fornitoreId; + + final int? clienteTarget; + + final int? canale; + + final int? tipoModuloContrattoId; + + final int? $all; +} + +class ModuloContrattoMinAggregateOutputType { + const ModuloContrattoMinAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + factory ModuloContrattoMinAggregateOutputType.fromJson(Map json) => + ModuloContrattoMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + clienteTarget: json['clienteTarget'] != null + ? _i3.TipoSoggetto.values + .firstWhere((e) => e.name == json['clienteTarget']) + : null, + canale: json['canale'] != null + ? _i3.Canale.values.firstWhere((e) => e.name == json['canale']) + : null, + tipoModuloContrattoId: json['tipoModuloContrattoId'], + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoSoggetto? clienteTarget; + + final _i3.Canale? canale; + + final String? tipoModuloContrattoId; +} + +class ModuloContrattoMaxAggregateOutputType { + const ModuloContrattoMaxAggregateOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + factory ModuloContrattoMaxAggregateOutputType.fromJson(Map json) => + ModuloContrattoMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + clienteTarget: json['clienteTarget'] != null + ? _i3.TipoSoggetto.values + .firstWhere((e) => e.name == json['clienteTarget']) + : null, + canale: json['canale'] != null + ? _i3.Canale.values.firstWhere((e) => e.name == json['canale']) + : null, + tipoModuloContrattoId: json['tipoModuloContrattoId'], + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoSoggetto? clienteTarget; + + final _i3.Canale? canale; + + final String? tipoModuloContrattoId; +} + +class ModuloContrattoGroupByOutputType { + const ModuloContrattoGroupByOutputType({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.$count, + this.$min, + this.$max, + }); + + factory ModuloContrattoGroupByOutputType.fromJson(Map json) => + ModuloContrattoGroupByOutputType( + id: json['id'], + nome: json['nome'], + fornitoreId: json['fornitoreId'], + clienteTarget: json['clienteTarget'] != null + ? _i3.TipoSoggetto.values + .firstWhere((e) => e.name == json['clienteTarget']) + : null, + canale: json['canale'] != null + ? _i3.Canale.values.firstWhere((e) => e.name == json['canale']) + : null, + tipoModuloContrattoId: json['tipoModuloContrattoId'], + $count: json['_count'] is Map + ? _i2.ModuloContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ModuloContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ModuloContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final String? fornitoreId; + + final _i3.TipoSoggetto? clienteTarget; + + final _i3.Canale? canale; + + final String? tipoModuloContrattoId; + + final _i2.ModuloContrattoCountAggregateOutputType? $count; + + final _i2.ModuloContrattoMinAggregateOutputType? $min; + + final _i2.ModuloContrattoMaxAggregateOutputType? $max; +} + +class ModuloContrattoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ModuloContrattoCountOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? clienteTarget; + + final _i2.SortOrder? canale; + + final _i2.SortOrder? tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ModuloContrattoMaxOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? clienteTarget; + + final _i2.SortOrder? canale; + + final _i2.SortOrder? tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ModuloContrattoMinOrderByAggregateInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? clienteTarget; + + final _i2.SortOrder? canale; + + final _i2.SortOrder? tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ModuloContrattoOrderByWithAggregationInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? clienteTarget; + + final _i2.SortOrder? canale; + + final _i2.SortOrder? tipoModuloContrattoId; + + final _i2.ModuloContrattoCountOrderByAggregateInput? $count; + + final _i2.ModuloContrattoMaxOrderByAggregateInput? $max; + + final _i2.ModuloContrattoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedEnumCanaleWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumCanaleWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.Canale, _i1.Reference<_i3.Canale>>? equals; + + final Iterable<_i3.Canale>? $in; + + final Iterable<_i3.Canale>? notIn; + + final _i1.PrismaUnion<_i3.Canale, _i2.NestedEnumCanaleWithAggregatesFilter>? + not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumCanaleFilter? $min; + + final _i2.NestedEnumCanaleFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumCanaleWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumCanaleWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.Canale, _i1.Reference<_i3.Canale>>? equals; + + final Iterable<_i3.Canale>? $in; + + final Iterable<_i3.Canale>? notIn; + + final _i1.PrismaUnion<_i3.Canale, _i2.NestedEnumCanaleWithAggregatesFilter>? + not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumCanaleFilter? $min; + + final _i2.NestedEnumCanaleFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ModuloContrattoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ModuloContrattoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.ModuloContrattoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ModuloContrattoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.ModuloContrattoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? fornitoreId; + + final _i1 + .PrismaUnion<_i2.EnumTipoSoggettoWithAggregatesFilter, _i3.TipoSoggetto>? + clienteTarget; + + final _i1.PrismaUnion<_i2.EnumCanaleWithAggregatesFilter, _i3.Canale>? canale; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + tipoModuloContrattoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ModuloContrattoCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? clienteTarget; + + final bool? canale; + + final bool? tipoModuloContrattoId; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + '_all': $all, + }; +} + +class ModuloContrattoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ModuloContrattoGroupByOutputTypeCountArgs({this.select}); + + final _i2.ModuloContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ModuloContrattoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ModuloContrattoMinAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? clienteTarget; + + final bool? canale; + + final bool? tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ModuloContrattoGroupByOutputTypeMinArgs({this.select}); + + final _i2.ModuloContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ModuloContrattoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ModuloContrattoMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? clienteTarget; + + final bool? canale; + + final bool? tipoModuloContrattoId; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + }; +} + +class ModuloContrattoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ModuloContrattoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ModuloContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ModuloContrattoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ModuloContrattoGroupByOutputTypeSelect({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.tipoModuloContrattoId, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final bool? fornitoreId; + + final bool? clienteTarget; + + final bool? canale; + + final bool? tipoModuloContrattoId; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'tipoModuloContrattoId': tipoModuloContrattoId, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateModuloContratto { + const AggregateModuloContratto({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateModuloContratto.fromJson(Map json) => + AggregateModuloContratto( + $count: json['_count'] is Map + ? _i2.ModuloContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ModuloContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ModuloContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ModuloContrattoCountAggregateOutputType? $count; + + final _i2.ModuloContrattoMinAggregateOutputType? $min; + + final _i2.ModuloContrattoMaxAggregateOutputType? $max; +} + +class AggregateModuloContrattoCountArgs + implements _i1.JsonConvertible> { + const AggregateModuloContrattoCountArgs({this.select}); + + final _i2.ModuloContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateModuloContrattoMinArgs + implements _i1.JsonConvertible> { + const AggregateModuloContrattoMinArgs({this.select}); + + final _i2.ModuloContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateModuloContrattoMaxArgs + implements _i1.JsonConvertible> { + const AggregateModuloContrattoMaxArgs({this.select}); + + final _i2.ModuloContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateModuloContrattoSelect + implements _i1.JsonConvertible> { + const AggregateModuloContrattoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum TipoModuloContrattoScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'TipoModuloContratto'), + nome('nome', 'TipoModuloContratto'), + numeroOfferteCollegabili( + 'numeroOfferteCollegabili', 'TipoModuloContratto'); + + const TipoModuloContrattoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ModuloContrattoCreateWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateWithoutTipoModuloInput({ + required this.id, + required this.nome, + required this.clienteTarget, + required this.canale, + this.serviziEwoCollegabili, + this.contratti, + required this.fornitore, + }); + + final String id; + + final String nome; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ServizioEwoCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoCreateNestedManyWithoutModuloInput? contratti; + + final _i2.FornitoreCreateNestedOneWithoutModuliContrattoInput fornitore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + }; +} + +class ModuloContrattoUncheckedCreateWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateWithoutTipoModuloInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + this.serviziEwoCollegabili, + this.contratti, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutModuliContrattoInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutModuloInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoCreateOrConnectWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateOrConnectWithoutTipoModuloInput({ + required this.where, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ModuloContrattoCreateManyTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateManyTipoModuloInput({ + required this.id, + required this.nome, + required this.fornitoreId, + required this.clienteTarget, + required this.canale, + }); + + final String id; + + final String nome; + + final String fornitoreId; + + final _i3.TipoSoggetto clienteTarget; + + final _i3.Canale canale; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + }; +} + +class ModuloContrattoCreateManyTipoModuloInputEnvelope + implements _i1.JsonConvertible> { + const ModuloContrattoCreateManyTipoModuloInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateManyTipoModuloInput, + Iterable<_i2.ModuloContrattoCreateManyTipoModuloInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ModuloContrattoCreateNestedManyWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoCreateNestedManyWithoutTipoModuloInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutTipoModuloInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutTipoModuloInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput>>? + connectOrCreate; + + final _i2.ModuloContrattoCreateManyTipoModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoModuloContrattoCreateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCreateInput({ + required this.id, + required this.nome, + required this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final String id; + + final String nome; + + final int numeroOfferteCollegabili; + + final _i2.ModuloContrattoCreateNestedManyWithoutTipoModuloInput? + moduloContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class ModuloContrattoUncheckedCreateNestedManyWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedCreateNestedManyWithoutTipoModuloInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutTipoModuloInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutTipoModuloInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput>>? + connectOrCreate; + + final _i2.ModuloContrattoCreateManyTipoModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoModuloContrattoUncheckedCreateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUncheckedCreateInput({ + required this.id, + required this.nome, + required this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final String id; + + final String nome; + + final int numeroOfferteCollegabili; + + final _i2.ModuloContrattoUncheckedCreateNestedManyWithoutTipoModuloInput? + moduloContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class TipoModuloContrattoCreateManyInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCreateManyInput({ + required this.id, + required this.nome, + required this.numeroOfferteCollegabili, + }); + + final String id; + + final String nome; + + final int numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class ModuloContrattoUpdateWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithoutTipoModuloInput({ + this.id, + this.nome, + this.clienteTarget, + this.canale, + this.serviziEwoCollegabili, + this.contratti, + this.fornitore, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ServizioEwoUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUpdateManyWithoutModuloNestedInput? contratti; + + final _i2.FornitoreUpdateOneRequiredWithoutModuliContrattoNestedInput? + fornitore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + 'fornitore': fornitore, + }; +} + +class ModuloContrattoUncheckedUpdateWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateWithoutTipoModuloInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + this.serviziEwoCollegabili, + this.contratti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutModuliContrattoNestedInput? + serviziEwoCollegabili; + + final _i2.ContrattoUncheckedUpdateManyWithoutModuloNestedInput? contratti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + 'serviziEwoCollegabili': serviziEwoCollegabili, + 'contratti': contratti, + }; +} + +class ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutTipoModuloInput, + _i2.ModuloContrattoUncheckedUpdateWithoutTipoModuloInput> update; + + final _i1.PrismaUnion<_i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateWithoutTipoModuloInput, + _i2.ModuloContrattoUncheckedUpdateWithoutTipoModuloInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutTipoModuloInput({ + this.id, + this.nome, + this.fornitoreId, + this.clienteTarget, + this.canale, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion<_i3.TipoSoggetto, + _i2.EnumTipoSoggettoFieldUpdateOperationsInput>? clienteTarget; + + final _i1.PrismaUnion<_i3.Canale, _i2.EnumCanaleFieldUpdateOperationsInput>? + canale; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'fornitoreId': fornitoreId, + 'clienteTarget': clienteTarget, + 'canale': canale, + }; +} + +class ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput({ + required this.where, + required this.data, + }); + + final _i2.ModuloContrattoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ModuloContrattoUpdateManyMutationInput, + _i2.ModuloContrattoUncheckedUpdateManyWithoutTipoModuloInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ModuloContrattoUpdateManyWithoutTipoModuloNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUpdateManyWithoutTipoModuloNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutTipoModuloInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutTipoModuloInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput>>? + upsert; + + final _i2.ModuloContrattoCreateManyTipoModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput>>? + update; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoModuloContrattoUpdateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpdateInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + final _i2.ModuloContrattoUpdateManyWithoutTipoModuloNestedInput? + moduloContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class ModuloContrattoUncheckedUpdateManyWithoutTipoModuloNestedInput + implements _i1.JsonConvertible> { + const ModuloContrattoUncheckedUpdateManyWithoutTipoModuloNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateWithoutTipoModuloInput, + _i1.PrismaUnion< + Iterable<_i2.ModuloContrattoCreateWithoutTipoModuloInput>, + _i1.PrismaUnion< + _i2.ModuloContrattoUncheckedCreateWithoutTipoModuloInput, + Iterable< + _i2 + .ModuloContrattoUncheckedCreateWithoutTipoModuloInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput, + Iterable<_i2.ModuloContrattoCreateOrConnectWithoutTipoModuloInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpsertWithWhereUniqueWithoutTipoModuloInput>>? + upsert; + + final _i2.ModuloContrattoCreateManyTipoModuloInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ModuloContrattoWhereUniqueInput, + Iterable<_i2.ModuloContrattoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpdateWithWhereUniqueWithoutTipoModuloInput>>? + update; + + final _i1.PrismaUnion< + _i2.ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput, + Iterable< + _i2.ModuloContrattoUpdateManyWithWhereWithoutTipoModuloInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ModuloContrattoScalarWhereInput, + Iterable<_i2.ModuloContrattoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoModuloContrattoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUncheckedUpdateInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.moduloContratto, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + final _i2.ModuloContrattoUncheckedUpdateManyWithoutTipoModuloNestedInput? + moduloContratto; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + 'ModuloContratto': moduloContratto, + }; +} + +class TipoModuloContrattoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUpdateManyMutationInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoUncheckedUpdateManyInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoCountAggregateOutputType { + const TipoModuloContrattoCountAggregateOutputType({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.$all, + }); + + factory TipoModuloContrattoCountAggregateOutputType.fromJson(Map json) => + TipoModuloContrattoCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + numeroOfferteCollegabili: json['numeroOfferteCollegabili'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? numeroOfferteCollegabili; + + final int? $all; +} + +class TipoModuloContrattoAvgAggregateOutputType { + const TipoModuloContrattoAvgAggregateOutputType( + {this.numeroOfferteCollegabili}); + + factory TipoModuloContrattoAvgAggregateOutputType.fromJson(Map json) => + TipoModuloContrattoAvgAggregateOutputType( + numeroOfferteCollegabili: json['numeroOfferteCollegabili']); + + final double? numeroOfferteCollegabili; +} + +class TipoModuloContrattoSumAggregateOutputType { + const TipoModuloContrattoSumAggregateOutputType( + {this.numeroOfferteCollegabili}); + + factory TipoModuloContrattoSumAggregateOutputType.fromJson(Map json) => + TipoModuloContrattoSumAggregateOutputType( + numeroOfferteCollegabili: json['numeroOfferteCollegabili']); + + final int? numeroOfferteCollegabili; +} + +class TipoModuloContrattoMinAggregateOutputType { + const TipoModuloContrattoMinAggregateOutputType({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + factory TipoModuloContrattoMinAggregateOutputType.fromJson(Map json) => + TipoModuloContrattoMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + numeroOfferteCollegabili: json['numeroOfferteCollegabili'], + ); + + final String? id; + + final String? nome; + + final int? numeroOfferteCollegabili; +} + +class TipoModuloContrattoMaxAggregateOutputType { + const TipoModuloContrattoMaxAggregateOutputType({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + factory TipoModuloContrattoMaxAggregateOutputType.fromJson(Map json) => + TipoModuloContrattoMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + numeroOfferteCollegabili: json['numeroOfferteCollegabili'], + ); + + final String? id; + + final String? nome; + + final int? numeroOfferteCollegabili; +} + +class TipoModuloContrattoGroupByOutputType { + const TipoModuloContrattoGroupByOutputType({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory TipoModuloContrattoGroupByOutputType.fromJson(Map json) => + TipoModuloContrattoGroupByOutputType( + id: json['id'], + nome: json['nome'], + numeroOfferteCollegabili: json['numeroOfferteCollegabili'], + $count: json['_count'] is Map + ? _i2.TipoModuloContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.TipoModuloContrattoAvgAggregateOutputType.fromJson( + json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.TipoModuloContrattoSumAggregateOutputType.fromJson( + json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.TipoModuloContrattoMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoModuloContrattoMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final int? numeroOfferteCollegabili; + + final _i2.TipoModuloContrattoCountAggregateOutputType? $count; + + final _i2.TipoModuloContrattoAvgAggregateOutputType? $avg; + + final _i2.TipoModuloContrattoSumAggregateOutputType? $sum; + + final _i2.TipoModuloContrattoMinAggregateOutputType? $min; + + final _i2.TipoModuloContrattoMaxAggregateOutputType? $max; +} + +class TipoModuloContrattoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoCountOrderByAggregateInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoAvgOrderByAggregateInput( + {this.numeroOfferteCollegabili}); + + final _i2.SortOrder? numeroOfferteCollegabili; + + @override + Map toJson() => + {'numeroOfferteCollegabili': numeroOfferteCollegabili}; +} + +class TipoModuloContrattoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoMaxOrderByAggregateInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoMinOrderByAggregateInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoSumOrderByAggregateInput( + {this.numeroOfferteCollegabili}); + + final _i2.SortOrder? numeroOfferteCollegabili; + + @override + Map toJson() => + {'numeroOfferteCollegabili': numeroOfferteCollegabili}; +} + +class TipoModuloContrattoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoOrderByWithAggregationInput({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? numeroOfferteCollegabili; + + final _i2.TipoModuloContrattoCountOrderByAggregateInput? $count; + + final _i2.TipoModuloContrattoAvgOrderByAggregateInput? $avg; + + final _i2.TipoModuloContrattoMaxOrderByAggregateInput? $max; + + final _i2.TipoModuloContrattoMinOrderByAggregateInput? $min; + + final _i2.TipoModuloContrattoSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedIntWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedIntWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedFloatFilter? $avg; + + final _i2.NestedIntFilter? $sum; + + final _i2.NestedIntFilter? $min; + + final _i2.NestedIntFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class IntWithAggregatesFilter + implements _i1.JsonConvertible> { + const IntWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.lt, + this.lte, + this.gt, + this.gte, + this.not, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion>? equals; + + final Iterable? $in; + + final Iterable? notIn; + + final _i1.PrismaUnion>? lt; + + final _i1.PrismaUnion>? lte; + + final _i1.PrismaUnion>? gt; + + final _i1.PrismaUnion>? gte; + + final _i1.PrismaUnion? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedFloatFilter? $avg; + + final _i2.NestedIntFilter? $sum; + + final _i2.NestedIntFilter? $min; + + final _i2.NestedIntFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'lt': lt, + 'lte': lte, + 'gt': gt, + 'gte': gte, + 'not': not, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class TipoModuloContrattoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const TipoModuloContrattoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final _i1.PrismaUnion<_i2.TipoModuloContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.TipoModuloContrattoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.TipoModuloContrattoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.TipoModuloContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.TipoModuloContrattoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.IntWithAggregatesFilter, int>? + numeroOfferteCollegabili; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? numeroOfferteCollegabili; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + '_all': $all, + }; +} + +class TipoModuloContrattoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeCountArgs({this.select}); + + final _i2.TipoModuloContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoAvgAggregateOutputTypeSelect( + {this.numeroOfferteCollegabili}); + + final bool? numeroOfferteCollegabili; + + @override + Map toJson() => + {'numeroOfferteCollegabili': numeroOfferteCollegabili}; +} + +class TipoModuloContrattoGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeAvgArgs({this.select}); + + final _i2.TipoModuloContrattoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoSumAggregateOutputTypeSelect( + {this.numeroOfferteCollegabili}); + + final bool? numeroOfferteCollegabili; + + @override + Map toJson() => + {'numeroOfferteCollegabili': numeroOfferteCollegabili}; +} + +class TipoModuloContrattoGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeSumArgs({this.select}); + + final _i2.TipoModuloContrattoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoMinAggregateOutputTypeSelect({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final bool? id; + + final bool? nome; + + final bool? numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeMinArgs({this.select}); + + final _i2.TipoModuloContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + }); + + final bool? id; + + final bool? nome; + + final bool? numeroOfferteCollegabili; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + }; +} + +class TipoModuloContrattoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.TipoModuloContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoModuloContrattoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoModuloContrattoGroupByOutputTypeSelect({ + this.id, + this.nome, + this.numeroOfferteCollegabili, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final bool? numeroOfferteCollegabili; + + final _i1 + .PrismaUnion? + $count; + + final _i1.PrismaUnion? + $avg; + + final _i1.PrismaUnion? + $sum; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'numeroOfferteCollegabili': numeroOfferteCollegabili, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateTipoModuloContratto { + const AggregateTipoModuloContratto({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateTipoModuloContratto.fromJson(Map json) => + AggregateTipoModuloContratto( + $count: json['_count'] is Map + ? _i2.TipoModuloContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.TipoModuloContrattoAvgAggregateOutputType.fromJson( + json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.TipoModuloContrattoSumAggregateOutputType.fromJson( + json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.TipoModuloContrattoMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoModuloContrattoMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.TipoModuloContrattoCountAggregateOutputType? $count; + + final _i2.TipoModuloContrattoAvgAggregateOutputType? $avg; + + final _i2.TipoModuloContrattoSumAggregateOutputType? $sum; + + final _i2.TipoModuloContrattoMinAggregateOutputType? $min; + + final _i2.TipoModuloContrattoMaxAggregateOutputType? $max; +} + +class AggregateTipoModuloContrattoCountArgs + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoCountArgs({this.select}); + + final _i2.TipoModuloContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoModuloContrattoAvgArgs + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoAvgArgs({this.select}); + + final _i2.TipoModuloContrattoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoModuloContrattoSumArgs + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoSumArgs({this.select}); + + final _i2.TipoModuloContrattoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoModuloContrattoMinArgs + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoMinArgs({this.select}); + + final _i2.TipoModuloContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoModuloContrattoMaxArgs + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoMaxArgs({this.select}); + + final _i2.TipoModuloContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoModuloContrattoSelect + implements _i1.JsonConvertible> { + const AggregateTipoModuloContrattoSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class StatoContrattoCreateInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoCreateNestedManyWithoutStatoInput? contratti; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutStatoInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedCreateInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedCreateInput({ + required this.id, + required this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final String id; + + final String nome; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutStatoInput? contratti; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliContrattiInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutStatoInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoCreateManyInput + implements _i1.JsonConvertible> { + const StatoContrattoCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoUpdateInput + implements _i1.JsonConvertible> { + const StatoContrattoUpdateInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUpdateManyWithoutStatoNestedInput? contratti; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutStatoNestedInput? contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateInput({ + this.id, + this.nome, + this.contratti, + this.serviziEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ContrattoUncheckedUpdateManyWithoutStatoNestedInput? contratti; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliContrattiNestedInput? + serviziEwo; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutStatoNestedInput? + contrattiEnelXAssicurazione; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'contratti': contratti, + 'serviziEwo': serviziEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + }; +} + +class StatoContrattoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const StatoContrattoUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoCountAggregateOutputType { + const StatoContrattoCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory StatoContrattoCountAggregateOutputType.fromJson(Map json) => + StatoContrattoCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class StatoContrattoMinAggregateOutputType { + const StatoContrattoMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory StatoContrattoMinAggregateOutputType.fromJson(Map json) => + StatoContrattoMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class StatoContrattoMaxAggregateOutputType { + const StatoContrattoMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory StatoContrattoMaxAggregateOutputType.fromJson(Map json) => + StatoContrattoMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class StatoContrattoGroupByOutputType { + const StatoContrattoGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory StatoContrattoGroupByOutputType.fromJson(Map json) => + StatoContrattoGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.StatoContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.StatoContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.StatoContrattoCountAggregateOutputType? $count; + + final _i2.StatoContrattoMinAggregateOutputType? $min; + + final _i2.StatoContrattoMaxAggregateOutputType? $max; +} + +class StatoContrattoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoContrattoCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoContrattoMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoContrattoMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const StatoContrattoOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.StatoContrattoCountOrderByAggregateInput? $count; + + final _i2.StatoContrattoMaxOrderByAggregateInput? $max; + + final _i2.StatoContrattoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class StatoContrattoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const StatoContrattoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.StatoContrattoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.StatoContrattoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.StatoContrattoScalarWhereWithAggregatesInput, + Iterable<_i2.StatoContrattoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoContrattoCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class StatoContrattoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const StatoContrattoGroupByOutputTypeCountArgs({this.select}); + + final _i2.StatoContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoContrattoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoContrattoMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const StatoContrattoGroupByOutputTypeMinArgs({this.select}); + + final _i2.StatoContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoContrattoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoContrattoMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoContrattoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const StatoContrattoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.StatoContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoContrattoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoContrattoGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateStatoContratto { + const AggregateStatoContratto({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateStatoContratto.fromJson(Map json) => AggregateStatoContratto( + $count: json['_count'] is Map + ? _i2.StatoContrattoCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.StatoContrattoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoContrattoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.StatoContrattoCountAggregateOutputType? $count; + + final _i2.StatoContrattoMinAggregateOutputType? $min; + + final _i2.StatoContrattoMaxAggregateOutputType? $max; +} + +class AggregateStatoContrattoCountArgs + implements _i1.JsonConvertible> { + const AggregateStatoContrattoCountArgs({this.select}); + + final _i2.StatoContrattoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoContrattoMinArgs + implements _i1.JsonConvertible> { + const AggregateStatoContrattoMinArgs({this.select}); + + final _i2.StatoContrattoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoContrattoMaxArgs + implements _i1.JsonConvertible> { + const AggregateStatoContrattoMaxArgs({this.select}); + + final _i2.StatoContrattoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoContrattoSelect + implements _i1.JsonConvertible> { + const AggregateStatoContrattoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class OffertaCreateInput implements _i1.JsonConvertible> { + const OffertaCreateInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final _i2.ServizioEwoCreateNestedOneWithoutOfferteInput servizioEwo; + + final _i2.ContrattoEnelLuceCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaCreateNestedManyWithoutInclusaInOfferteInput? offerteIncluse; + + final _i2.OffertaCreateNestedManyWithoutOfferteIncluseInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedCreateInput + implements _i1.JsonConvertible> { + const OffertaUncheckedCreateInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedCreateNestedManyWithoutOffertaInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedCreateNestedManyWithoutInclusaInOfferteInput? + offerteIncluse; + + final _i2.OffertaUncheckedCreateNestedManyWithoutOfferteIncluseInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaCreateManyInput + implements _i1.JsonConvertible> { + const OffertaCreateManyInput({ + this.uuid, + required this.nome, + required this.dataFineOfferta, + required this.dataInizioOfferta, + required this.servizioEwoId, + }); + + final String? uuid; + + final String nome; + + final DateTime dataFineOfferta; + + final DateTime dataInizioOfferta; + + final String servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaUpdateInput implements _i1.JsonConvertible> { + const OffertaUpdateInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwo, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i2.ServizioEwoUpdateOneRequiredWithoutOfferteNestedInput? servizioEwo; + + final _i2.ContrattoEnelLuceUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2.ContrattoEnelXAssicurazioneUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUpdateManyWithoutInclusaInOfferteNestedInput? offerteIncluse; + + final _i2.OffertaUpdateManyWithoutOfferteIncluseNestedInput? inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwo': servizioEwo, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.contrattiEnelLuce, + this.contrattiEnelGas, + this.contrattiEnelFibra, + this.contrattiEnelXAssicurazione, + this.offerteIncluse, + this.inclusaInOfferte, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + final _i2.ContrattoEnelLuceUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelLuce; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelGas; + + final _i2.ContrattoEnelFibraUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelFibra; + + final _i2 + .ContrattoEnelXAssicurazioneUncheckedUpdateManyWithoutOffertaNestedInput? + contrattiEnelXAssicurazione; + + final _i2.OffertaUncheckedUpdateManyWithoutInclusaInOfferteNestedInput? + offerteIncluse; + + final _i2.OffertaUncheckedUpdateManyWithoutOfferteIncluseNestedInput? + inclusaInOfferte; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + 'contrattiEnelLuce': contrattiEnelLuce, + 'contrattiEnelGas': contrattiEnelGas, + 'contrattiEnelFibra': contrattiEnelFibra, + 'contrattiEnelXAssicurazione': contrattiEnelXAssicurazione, + 'offerteIncluse': offerteIncluse, + 'inclusaInOfferte': inclusaInOfferte, + }; +} + +class OffertaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const OffertaUncheckedUpdateManyInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + dataFineOfferta; + + final _i1.PrismaUnion? + dataInizioOfferta; + + final _i1.PrismaUnion? + servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaCountAggregateOutputType { + const OffertaCountAggregateOutputType({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.$all, + }); + + factory OffertaCountAggregateOutputType.fromJson(Map json) => + OffertaCountAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataFineOfferta: json['dataFineOfferta'], + dataInizioOfferta: json['dataInizioOfferta'], + servizioEwoId: json['servizioEwoId'], + $all: json['_all'], + ); + + final int? uuid; + + final int? nome; + + final int? dataFineOfferta; + + final int? dataInizioOfferta; + + final int? servizioEwoId; + + final int? $all; +} + +class OffertaMinAggregateOutputType { + const OffertaMinAggregateOutputType({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + factory OffertaMinAggregateOutputType.fromJson(Map json) => + OffertaMinAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataFineOfferta: json['dataFineOfferta'], + dataInizioOfferta: json['dataInizioOfferta'], + servizioEwoId: json['servizioEwoId'], + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataFineOfferta; + + final DateTime? dataInizioOfferta; + + final String? servizioEwoId; +} + +class OffertaMaxAggregateOutputType { + const OffertaMaxAggregateOutputType({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + factory OffertaMaxAggregateOutputType.fromJson(Map json) => + OffertaMaxAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataFineOfferta: json['dataFineOfferta'], + dataInizioOfferta: json['dataInizioOfferta'], + servizioEwoId: json['servizioEwoId'], + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataFineOfferta; + + final DateTime? dataInizioOfferta; + + final String? servizioEwoId; +} + +class OffertaGroupByOutputType { + const OffertaGroupByOutputType({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.$count, + this.$min, + this.$max, + }); + + factory OffertaGroupByOutputType.fromJson(Map json) => + OffertaGroupByOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataFineOfferta: json['dataFineOfferta'], + dataInizioOfferta: json['dataInizioOfferta'], + servizioEwoId: json['servizioEwoId'], + $count: json['_count'] is Map + ? _i2.OffertaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.OffertaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OffertaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataFineOfferta; + + final DateTime? dataInizioOfferta; + + final String? servizioEwoId; + + final _i2.OffertaCountAggregateOutputType? $count; + + final _i2.OffertaMinAggregateOutputType? $min; + + final _i2.OffertaMaxAggregateOutputType? $max; +} + +class OffertaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const OffertaCountOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataFineOfferta; + + final _i2.SortOrder? dataInizioOfferta; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const OffertaMaxOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataFineOfferta; + + final _i2.SortOrder? dataInizioOfferta; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const OffertaMinOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataFineOfferta; + + final _i2.SortOrder? dataInizioOfferta; + + final _i2.SortOrder? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const OffertaOrderByWithAggregationInput({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataFineOfferta; + + final _i2.SortOrder? dataInizioOfferta; + + final _i2.SortOrder? servizioEwoId; + + final _i2.OffertaCountOrderByAggregateInput? $count; + + final _i2.OffertaMaxOrderByAggregateInput? $max; + + final _i2.OffertaMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class OffertaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const OffertaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final _i1.PrismaUnion<_i2.OffertaScalarWhereWithAggregatesInput, + Iterable<_i2.OffertaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.OffertaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.OffertaScalarWhereWithAggregatesInput, + Iterable<_i2.OffertaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + dataFineOfferta; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + dataInizioOfferta; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? servizioEwoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OffertaCountAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.$all, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataFineOfferta; + + final bool? dataInizioOfferta; + + final bool? servizioEwoId; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + '_all': $all, + }; +} + +class OffertaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const OffertaGroupByOutputTypeCountArgs({this.select}); + + final _i2.OffertaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OffertaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OffertaMinAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataFineOfferta; + + final bool? dataInizioOfferta; + + final bool? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const OffertaGroupByOutputTypeMinArgs({this.select}); + + final _i2.OffertaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OffertaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OffertaMaxAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataFineOfferta; + + final bool? dataInizioOfferta; + + final bool? servizioEwoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + }; +} + +class OffertaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const OffertaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.OffertaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OffertaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const OffertaGroupByOutputTypeSelect({ + this.uuid, + this.nome, + this.dataFineOfferta, + this.dataInizioOfferta, + this.servizioEwoId, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataFineOfferta; + + final bool? dataInizioOfferta; + + final bool? servizioEwoId; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataFineOfferta': dataFineOfferta, + 'dataInizioOfferta': dataInizioOfferta, + 'servizioEwoId': servizioEwoId, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateOfferta { + const AggregateOfferta({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateOfferta.fromJson(Map json) => AggregateOfferta( + $count: json['_count'] is Map + ? _i2.OffertaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.OffertaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OffertaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.OffertaCountAggregateOutputType? $count; + + final _i2.OffertaMinAggregateOutputType? $min; + + final _i2.OffertaMaxAggregateOutputType? $max; +} + +class AggregateOffertaCountArgs + implements _i1.JsonConvertible> { + const AggregateOffertaCountArgs({this.select}); + + final _i2.OffertaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOffertaMinArgs + implements _i1.JsonConvertible> { + const AggregateOffertaMinArgs({this.select}); + + final _i2.OffertaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOffertaMaxArgs + implements _i1.JsonConvertible> { + const AggregateOffertaMaxArgs({this.select}); + + final _i2.OffertaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOffertaSelect + implements _i1.JsonConvertible> { + const AggregateOffertaSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class PraticaCreateInput implements _i1.JsonConvertible> { + const PraticaCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + required this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.TipoPraticaCreateNestedOneWithoutPraticheInput tipoPratica; + + final _i2.SoggettoCreateNestedOneWithoutPraticheIntestateInput? soggetto; + + final _i2.UtenteCreateNestedOneWithoutPraticheInput? utente; + + final _i2.NegozioCreateNestedOneWithoutPraticheInput? negozio; + + final _i2.StatoPraticaCreateNestedOneWithoutPraticheInput? stato; + + final _i2.ContrattoCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUncheckedCreateInput + implements _i1.JsonConvertible> { + const PraticaUncheckedCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutPraticaInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaCreateManyInput + implements _i1.JsonConvertible> { + const PraticaCreateManyInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final String tipoPraticaId; + + final _i1.PrismaUnion? soggettoUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? statoPraticaId; + + final _i1.PrismaUnion? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaUpdateInput implements _i1.JsonConvertible> { + const PraticaUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.ultimoAggiornamentoStato, + this.tipoPratica, + this.soggetto, + this.utente, + this.negozio, + this.stato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.TipoPraticaUpdateOneRequiredWithoutPraticheNestedInput? tipoPratica; + + final _i2.SoggettoUpdateOneWithoutPraticheIntestateNestedInput? soggetto; + + final _i2.UtenteUpdateOneWithoutPraticheNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutPraticheNestedInput? negozio; + + final _i2.StatoPraticaUpdateOneWithoutPraticheNestedInput? stato; + + final _i2.ContrattoUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'tipoPratica': tipoPratica, + 'soggetto': soggetto, + 'utente': utente, + 'negozio': negozio, + 'stato': stato, + 'contratto': contratto, + }; +} + +class PraticaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.contratto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + final _i2.ContrattoUncheckedUpdateManyWithoutPraticaNestedInput? contratto; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + 'contratto': contratto, + }; +} + +class PraticaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const PraticaUncheckedUpdateManyInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? + tipoPraticaId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoPraticaId; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCountAggregateOutputType { + const PraticaCountAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.$all, + }); + + factory PraticaCountAggregateOutputType.fromJson(Map json) => + PraticaCountAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + tipoPraticaId: json['tipoPraticaId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + statoPraticaId: json['statoPraticaId'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + $all: json['_all'], + ); + + final int? uuid; + + final int? codice; + + final int? dataInserimento; + + final int? tipoPraticaId; + + final int? soggettoUuid; + + final int? utenteUuid; + + final int? negozioCodice; + + final int? statoPraticaId; + + final int? ultimoAggiornamentoStato; + + final int? $all; +} + +class PraticaMinAggregateOutputType { + const PraticaMinAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + factory PraticaMinAggregateOutputType.fromJson(Map json) => + PraticaMinAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + tipoPraticaId: json['tipoPraticaId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + statoPraticaId: json['statoPraticaId'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final String? tipoPraticaId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? statoPraticaId; + + final DateTime? ultimoAggiornamentoStato; +} + +class PraticaMaxAggregateOutputType { + const PraticaMaxAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + factory PraticaMaxAggregateOutputType.fromJson(Map json) => + PraticaMaxAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + tipoPraticaId: json['tipoPraticaId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + statoPraticaId: json['statoPraticaId'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final String? tipoPraticaId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? statoPraticaId; + + final DateTime? ultimoAggiornamentoStato; +} + +class PraticaGroupByOutputType { + const PraticaGroupByOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.$count, + this.$min, + this.$max, + }); + + factory PraticaGroupByOutputType.fromJson(Map json) => + PraticaGroupByOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + tipoPraticaId: json['tipoPraticaId'], + soggettoUuid: json['soggettoUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + statoPraticaId: json['statoPraticaId'], + ultimoAggiornamentoStato: json['ultimoAggiornamentoStato'], + $count: json['_count'] is Map + ? _i2.PraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.PraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.PraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final String? tipoPraticaId; + + final String? soggettoUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? statoPraticaId; + + final DateTime? ultimoAggiornamentoStato; + + final _i2.PraticaCountAggregateOutputType? $count; + + final _i2.PraticaMinAggregateOutputType? $min; + + final _i2.PraticaMaxAggregateOutputType? $max; +} + +class PraticaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const PraticaCountOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? tipoPraticaId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? statoPraticaId; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const PraticaMaxOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? tipoPraticaId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? statoPraticaId; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const PraticaMinOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? tipoPraticaId; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? statoPraticaId; + + final _i2.SortOrder? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const PraticaOrderByWithAggregationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? tipoPraticaId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? statoPraticaId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? + ultimoAggiornamentoStato; + + final _i2.PraticaCountOrderByAggregateInput? $count; + + final _i2.PraticaMaxOrderByAggregateInput? $max; + + final _i2.PraticaMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class PraticaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const PraticaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final _i1.PrismaUnion<_i2.PraticaScalarWhereWithAggregatesInput, + Iterable<_i2.PraticaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.PraticaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.PraticaScalarWhereWithAggregatesInput, + Iterable<_i2.PraticaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + dataInserimento; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? tipoPraticaId; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? statoPraticaId; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PraticaCountAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.$all, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? tipoPraticaId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? statoPraticaId; + + final bool? ultimoAggiornamentoStato; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + '_all': $all, + }; +} + +class PraticaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const PraticaGroupByOutputTypeCountArgs({this.select}); + + final _i2.PraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PraticaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PraticaMinAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? tipoPraticaId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? statoPraticaId; + + final bool? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const PraticaGroupByOutputTypeMinArgs({this.select}); + + final _i2.PraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PraticaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const PraticaMaxAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? tipoPraticaId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? statoPraticaId; + + final bool? ultimoAggiornamentoStato; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + }; +} + +class PraticaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const PraticaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.PraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class PraticaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const PraticaGroupByOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.tipoPraticaId, + this.soggettoUuid, + this.utenteUuid, + this.negozioCodice, + this.statoPraticaId, + this.ultimoAggiornamentoStato, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? tipoPraticaId; + + final bool? soggettoUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? statoPraticaId; + + final bool? ultimoAggiornamentoStato; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'tipoPraticaId': tipoPraticaId, + 'soggettoUuid': soggettoUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'statoPraticaId': statoPraticaId, + 'ultimoAggiornamentoStato': ultimoAggiornamentoStato, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregatePratica { + const AggregatePratica({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregatePratica.fromJson(Map json) => AggregatePratica( + $count: json['_count'] is Map + ? _i2.PraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.PraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.PraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.PraticaCountAggregateOutputType? $count; + + final _i2.PraticaMinAggregateOutputType? $min; + + final _i2.PraticaMaxAggregateOutputType? $max; +} + +class AggregatePraticaCountArgs + implements _i1.JsonConvertible> { + const AggregatePraticaCountArgs({this.select}); + + final _i2.PraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePraticaMinArgs + implements _i1.JsonConvertible> { + const AggregatePraticaMinArgs({this.select}); + + final _i2.PraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePraticaMaxArgs + implements _i1.JsonConvertible> { + const AggregatePraticaMaxArgs({this.select}); + + final _i2.PraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregatePraticaSelect + implements _i1.JsonConvertible> { + const AggregatePraticaSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class TipoPraticaCreateInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutTipiPraticheInput? serviziEwo; + + final _i2.PraticaCreateNestedManyWithoutTipoPraticaInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaUncheckedCreateInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedCreateInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.pratiche, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutTipiPraticheInput? + serviziEwo; + + final _i2.PraticaUncheckedCreateNestedManyWithoutTipoPraticaInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaCreateManyInput + implements _i1.JsonConvertible> { + const TipoPraticaCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaUpdateInput + implements _i1.JsonConvertible> { + const TipoPraticaUpdateInput({ + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutTipiPraticheNestedInput? serviziEwo; + + final _i2.PraticaUpdateManyWithoutTipoPraticaNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateInput({ + this.id, + this.nome, + this.serviziEwo, + this.pratiche, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutTipiPraticheNestedInput? + serviziEwo; + + final _i2.PraticaUncheckedUpdateManyWithoutTipoPraticaNestedInput? pratiche; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'pratiche': pratiche, + }; +} + +class TipoPraticaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const TipoPraticaUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaCountAggregateOutputType { + const TipoPraticaCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory TipoPraticaCountAggregateOutputType.fromJson(Map json) => + TipoPraticaCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class TipoPraticaMinAggregateOutputType { + const TipoPraticaMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory TipoPraticaMinAggregateOutputType.fromJson(Map json) => + TipoPraticaMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class TipoPraticaMaxAggregateOutputType { + const TipoPraticaMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory TipoPraticaMaxAggregateOutputType.fromJson(Map json) => + TipoPraticaMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class TipoPraticaGroupByOutputType { + const TipoPraticaGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory TipoPraticaGroupByOutputType.fromJson(Map json) => + TipoPraticaGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.TipoPraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.TipoPraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoPraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.TipoPraticaCountAggregateOutputType? $count; + + final _i2.TipoPraticaMinAggregateOutputType? $min; + + final _i2.TipoPraticaMaxAggregateOutputType? $max; +} + +class TipoPraticaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoPraticaCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoPraticaMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoPraticaMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const TipoPraticaOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.TipoPraticaCountOrderByAggregateInput? $count; + + final _i2.TipoPraticaMaxOrderByAggregateInput? $max; + + final _i2.TipoPraticaMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class TipoPraticaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const TipoPraticaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereWithAggregatesInput, + Iterable<_i2.TipoPraticaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.TipoPraticaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.TipoPraticaScalarWhereWithAggregatesInput, + Iterable<_i2.TipoPraticaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoPraticaCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class TipoPraticaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const TipoPraticaGroupByOutputTypeCountArgs({this.select}); + + final _i2.TipoPraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoPraticaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoPraticaMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const TipoPraticaGroupByOutputTypeMinArgs({this.select}); + + final _i2.TipoPraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoPraticaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoPraticaMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoPraticaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const TipoPraticaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.TipoPraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoPraticaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoPraticaGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateTipoPratica { + const AggregateTipoPratica({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateTipoPratica.fromJson(Map json) => AggregateTipoPratica( + $count: json['_count'] is Map + ? _i2.TipoPraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.TipoPraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoPraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.TipoPraticaCountAggregateOutputType? $count; + + final _i2.TipoPraticaMinAggregateOutputType? $min; + + final _i2.TipoPraticaMaxAggregateOutputType? $max; +} + +class AggregateTipoPraticaCountArgs + implements _i1.JsonConvertible> { + const AggregateTipoPraticaCountArgs({this.select}); + + final _i2.TipoPraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoPraticaMinArgs + implements _i1.JsonConvertible> { + const AggregateTipoPraticaMinArgs({this.select}); + + final _i2.TipoPraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoPraticaMaxArgs + implements _i1.JsonConvertible> { + const AggregateTipoPraticaMaxArgs({this.select}); + + final _i2.TipoPraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoPraticaSelect + implements _i1.JsonConvertible> { + const AggregateTipoPraticaSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class StatoPraticaCreateInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateInput({ + required this.id, + required this.nome, + this.pratiche, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutStatoInput? pratiche; + + final _i2.ServizioEwoCreateNestedManyWithoutStatiPossibiliPraticheInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaUncheckedCreateInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedCreateInput({ + required this.id, + required this.nome, + this.pratiche, + this.serviziEwo, + }); + + final String id; + + final String nome; + + final _i2.PraticaUncheckedCreateNestedManyWithoutStatoInput? pratiche; + + final _i2 + .ServizioEwoUncheckedCreateNestedManyWithoutStatiPossibiliPraticheInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaCreateManyInput + implements _i1.JsonConvertible> { + const StatoPraticaCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaUpdateInput + implements _i1.JsonConvertible> { + const StatoPraticaUpdateInput({ + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutStatoNestedInput? pratiche; + + final _i2.ServizioEwoUpdateManyWithoutStatiPossibiliPraticheNestedInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateInput({ + this.id, + this.nome, + this.pratiche, + this.serviziEwo, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUncheckedUpdateManyWithoutStatoNestedInput? pratiche; + + final _i2 + .ServizioEwoUncheckedUpdateManyWithoutStatiPossibiliPraticheNestedInput? + serviziEwo; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'pratiche': pratiche, + 'serviziEwo': serviziEwo, + }; +} + +class StatoPraticaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const StatoPraticaUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaCountAggregateOutputType { + const StatoPraticaCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory StatoPraticaCountAggregateOutputType.fromJson(Map json) => + StatoPraticaCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class StatoPraticaMinAggregateOutputType { + const StatoPraticaMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory StatoPraticaMinAggregateOutputType.fromJson(Map json) => + StatoPraticaMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class StatoPraticaMaxAggregateOutputType { + const StatoPraticaMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory StatoPraticaMaxAggregateOutputType.fromJson(Map json) => + StatoPraticaMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class StatoPraticaGroupByOutputType { + const StatoPraticaGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory StatoPraticaGroupByOutputType.fromJson(Map json) => + StatoPraticaGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.StatoPraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.StatoPraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoPraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.StatoPraticaCountAggregateOutputType? $count; + + final _i2.StatoPraticaMinAggregateOutputType? $min; + + final _i2.StatoPraticaMaxAggregateOutputType? $max; +} + +class StatoPraticaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoPraticaCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoPraticaMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoPraticaMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const StatoPraticaOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.StatoPraticaCountOrderByAggregateInput? $count; + + final _i2.StatoPraticaMaxOrderByAggregateInput? $max; + + final _i2.StatoPraticaMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class StatoPraticaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const StatoPraticaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereWithAggregatesInput, + Iterable<_i2.StatoPraticaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.StatoPraticaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.StatoPraticaScalarWhereWithAggregatesInput, + Iterable<_i2.StatoPraticaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoPraticaCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class StatoPraticaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const StatoPraticaGroupByOutputTypeCountArgs({this.select}); + + final _i2.StatoPraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoPraticaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoPraticaMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const StatoPraticaGroupByOutputTypeMinArgs({this.select}); + + final _i2.StatoPraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoPraticaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoPraticaMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class StatoPraticaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const StatoPraticaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.StatoPraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoPraticaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoPraticaGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateStatoPratica { + const AggregateStatoPratica({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateStatoPratica.fromJson(Map json) => AggregateStatoPratica( + $count: json['_count'] is Map + ? _i2.StatoPraticaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.StatoPraticaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoPraticaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.StatoPraticaCountAggregateOutputType? $count; + + final _i2.StatoPraticaMinAggregateOutputType? $min; + + final _i2.StatoPraticaMaxAggregateOutputType? $max; +} + +class AggregateStatoPraticaCountArgs + implements _i1.JsonConvertible> { + const AggregateStatoPraticaCountArgs({this.select}); + + final _i2.StatoPraticaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoPraticaMinArgs + implements _i1.JsonConvertible> { + const AggregateStatoPraticaMinArgs({this.select}); + + final _i2.StatoPraticaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoPraticaMaxArgs + implements _i1.JsonConvertible> { + const AggregateStatoPraticaMaxArgs({this.select}); + + final _i2.StatoPraticaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoPraticaSelect + implements _i1.JsonConvertible> { + const AggregateStatoPraticaSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoEnelLuceCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateInput({ + this.uuid, + required this.stato, + required this.fornituraLuce, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelLuceInput stato; + + final _i2.FornituraLuceCreateNestedOneWithoutContrattiEnelLuceInput + fornituraLuce; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelLuceInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelLuceInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceUncheckedCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedCreateInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCreateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCreateManyInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraLuceUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraLuceUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUpdateInput({ + this.uuid, + this.stato, + this.fornituraLuce, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + stato; + + final _i2.FornituraLuceUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + fornituraLuce; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelLuceNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelLuceNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraLuce': fornituraLuce, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelLuceUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceUncheckedUpdateManyInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraLuceUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCountAggregateOutputType { + const ContrattoEnelLuceCountAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.$all, + }); + + factory ContrattoEnelLuceCountAggregateOutputType.fromJson(Map json) => + ContrattoEnelLuceCountAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraLuceUuid: json['fornituraLuceUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? statoContrattoId; + + final int? fornituraLuceUuid; + + final int? contrattoUuid; + + final int? offertaUuid; + + final int? $all; +} + +class ContrattoEnelLuceMinAggregateOutputType { + const ContrattoEnelLuceMinAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + factory ContrattoEnelLuceMinAggregateOutputType.fromJson(Map json) => + ContrattoEnelLuceMinAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraLuceUuid: json['fornituraLuceUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraLuceUuid; + + final String? contrattoUuid; + + final String? offertaUuid; +} + +class ContrattoEnelLuceMaxAggregateOutputType { + const ContrattoEnelLuceMaxAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + factory ContrattoEnelLuceMaxAggregateOutputType.fromJson(Map json) => + ContrattoEnelLuceMaxAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraLuceUuid: json['fornituraLuceUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraLuceUuid; + + final String? contrattoUuid; + + final String? offertaUuid; +} + +class ContrattoEnelLuceGroupByOutputType { + const ContrattoEnelLuceGroupByOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + factory ContrattoEnelLuceGroupByOutputType.fromJson(Map json) => + ContrattoEnelLuceGroupByOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraLuceUuid: json['fornituraLuceUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + $count: json['_count'] is Map + ? _i2.ContrattoEnelLuceCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraLuceUuid; + + final String? contrattoUuid; + + final String? offertaUuid; + + final _i2.ContrattoEnelLuceCountAggregateOutputType? $count; + + final _i2.ContrattoEnelLuceMinAggregateOutputType? $min; + + final _i2.ContrattoEnelLuceMaxAggregateOutputType? $max; +} + +class ContrattoEnelLuceCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCountOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceMaxOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceMinOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceOrderByWithAggregationInput({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraLuceUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.ContrattoEnelLuceCountOrderByAggregateInput? $count; + + final _i2.ContrattoEnelLuceMaxOrderByAggregateInput? $max; + + final _i2.ContrattoEnelLuceMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ContrattoEnelLuceScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ContrattoEnelLuceScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ContrattoEnelLuceScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelLuceScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelLuceScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoContrattoId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + fornituraLuceUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelLuceCountAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.$all, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraLuceUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_all': $all, + }; +} + +class ContrattoEnelLuceGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceGroupByOutputTypeCountArgs({this.select}); + + final _i2.ContrattoEnelLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelLuceMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelLuceMinAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraLuceUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceGroupByOutputTypeMinArgs({this.select}); + + final _i2.ContrattoEnelLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelLuceMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelLuceMaxAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraLuceUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelLuceGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ContrattoEnelLuceGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ContrattoEnelLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelLuceGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelLuceGroupByOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraLuceUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraLuceUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraLuceUuid': fornituraLuceUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateContrattoEnelLuce { + const AggregateContrattoEnelLuce({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateContrattoEnelLuce.fromJson(Map json) => + AggregateContrattoEnelLuce( + $count: json['_count'] is Map + ? _i2.ContrattoEnelLuceCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelLuceMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelLuceMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ContrattoEnelLuceCountAggregateOutputType? $count; + + final _i2.ContrattoEnelLuceMinAggregateOutputType? $min; + + final _i2.ContrattoEnelLuceMaxAggregateOutputType? $max; +} + +class AggregateContrattoEnelLuceCountArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelLuceCountArgs({this.select}); + + final _i2.ContrattoEnelLuceCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelLuceMinArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelLuceMinArgs({this.select}); + + final _i2.ContrattoEnelLuceMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelLuceMaxArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelLuceMaxArgs({this.select}); + + final _i2.ContrattoEnelLuceMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelLuceSelect + implements _i1.JsonConvertible> { + const AggregateContrattoEnelLuceSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoEnelGasCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateInput({ + this.uuid, + required this.stato, + required this.fornituraGas, + required this.contratto, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelGasInput stato; + + final _i2.FornituraGasCreateNestedOneWithoutContrattiEnelGasInput + fornituraGas; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelGasInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelGasInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasUncheckedCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedCreateInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCreateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCreateManyInput({ + this.uuid, + required this.statoContrattoId, + required this.fornituraGasUuid, + required this.contrattoUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String fornituraGasUuid; + + final String contrattoUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUpdateInput({ + this.uuid, + this.stato, + this.fornituraGas, + this.contratto, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + stato; + + final _i2.FornituraGasUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + fornituraGas; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelGasNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelGasNestedInput? offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'fornituraGas': fornituraGas, + 'contratto': contratto, + 'offerta': offerta, + }; +} + +class ContrattoEnelGasUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasUncheckedUpdateManyInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + fornituraGasUuid; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCountAggregateOutputType { + const ContrattoEnelGasCountAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.$all, + }); + + factory ContrattoEnelGasCountAggregateOutputType.fromJson(Map json) => + ContrattoEnelGasCountAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraGasUuid: json['fornituraGasUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? statoContrattoId; + + final int? fornituraGasUuid; + + final int? contrattoUuid; + + final int? offertaUuid; + + final int? $all; +} + +class ContrattoEnelGasMinAggregateOutputType { + const ContrattoEnelGasMinAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + factory ContrattoEnelGasMinAggregateOutputType.fromJson(Map json) => + ContrattoEnelGasMinAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraGasUuid: json['fornituraGasUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraGasUuid; + + final String? contrattoUuid; + + final String? offertaUuid; +} + +class ContrattoEnelGasMaxAggregateOutputType { + const ContrattoEnelGasMaxAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + factory ContrattoEnelGasMaxAggregateOutputType.fromJson(Map json) => + ContrattoEnelGasMaxAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraGasUuid: json['fornituraGasUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraGasUuid; + + final String? contrattoUuid; + + final String? offertaUuid; +} + +class ContrattoEnelGasGroupByOutputType { + const ContrattoEnelGasGroupByOutputType({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + factory ContrattoEnelGasGroupByOutputType.fromJson(Map json) => + ContrattoEnelGasGroupByOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + fornituraGasUuid: json['fornituraGasUuid'], + contrattoUuid: json['contrattoUuid'], + offertaUuid: json['offertaUuid'], + $count: json['_count'] is Map + ? _i2.ContrattoEnelGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? fornituraGasUuid; + + final String? contrattoUuid; + + final String? offertaUuid; + + final _i2.ContrattoEnelGasCountAggregateOutputType? $count; + + final _i2.ContrattoEnelGasMinAggregateOutputType? $min; + + final _i2.ContrattoEnelGasMaxAggregateOutputType? $max; +} + +class ContrattoEnelGasCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasCountOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasMaxOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasMinOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasOrderByWithAggregationInput({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? fornituraGasUuid; + + final _i2.SortOrder? contrattoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.ContrattoEnelGasCountOrderByAggregateInput? $count; + + final _i2.ContrattoEnelGasMaxOrderByAggregateInput? $max; + + final _i2.ContrattoEnelGasMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ContrattoEnelGasScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ContrattoEnelGasScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelGasScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ContrattoEnelGasScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelGasScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelGasScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoContrattoId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + fornituraGasUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelGasCountAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.$all, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraGasUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_all': $all, + }; +} + +class ContrattoEnelGasGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasGroupByOutputTypeCountArgs({this.select}); + + final _i2.ContrattoEnelGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelGasMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelGasMinAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraGasUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasGroupByOutputTypeMinArgs({this.select}); + + final _i2.ContrattoEnelGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelGasMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelGasMaxAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraGasUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelGasGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ContrattoEnelGasGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ContrattoEnelGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelGasGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelGasGroupByOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.fornituraGasUuid, + this.contrattoUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? fornituraGasUuid; + + final bool? contrattoUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'fornituraGasUuid': fornituraGasUuid, + 'contrattoUuid': contrattoUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateContrattoEnelGas { + const AggregateContrattoEnelGas({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateContrattoEnelGas.fromJson(Map json) => + AggregateContrattoEnelGas( + $count: json['_count'] is Map + ? _i2.ContrattoEnelGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelGasMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelGasMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ContrattoEnelGasCountAggregateOutputType? $count; + + final _i2.ContrattoEnelGasMinAggregateOutputType? $min; + + final _i2.ContrattoEnelGasMaxAggregateOutputType? $max; +} + +class AggregateContrattoEnelGasCountArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelGasCountArgs({this.select}); + + final _i2.ContrattoEnelGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelGasMinArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelGasMinArgs({this.select}); + + final _i2.ContrattoEnelGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelGasMaxArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelGasMaxArgs({this.select}); + + final _i2.ContrattoEnelGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelGasSelect + implements _i1.JsonConvertible> { + const AggregateContrattoEnelGasSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoEnelXAssicurazioneCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateInput({ + this.uuid, + required this.stato, + required this.contratto, + required this.domicilio, + this.offerta, + }); + + final String? uuid; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + contratto; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelXAssicurazioneInput + domicilio; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelXAssicurazioneInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedCreateInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCreateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCreateManyInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final String domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUpdateInput({ + this.uuid, + this.stato, + this.contratto, + this.domicilio, + this.offerta, + }); + + final _i1.PrismaUnion? uuid; + + final _i2 + .StatoContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + stato; + + final _i2 + .ContrattoUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + contratto; + + final _i2 + .DomicilioUpdateOneRequiredWithoutContrattiEnelXAssicurazioneNestedInput? + domicilio; + + final _i2.OffertaUpdateOneWithoutContrattiEnelXAssicurazioneNestedInput? + offerta; + + @override + Map toJson() => { + 'uuid': uuid, + 'stato': stato, + 'contratto': contratto, + 'domicilio': domicilio, + 'offerta': offerta, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneUncheckedUpdateManyInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion? + domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCountAggregateOutputType { + const ContrattoEnelXAssicurazioneCountAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.$all, + }); + + factory ContrattoEnelXAssicurazioneCountAggregateOutputType.fromJson( + Map json) => + ContrattoEnelXAssicurazioneCountAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? statoContrattoId; + + final int? contrattoUuid; + + final int? domicilioUuid; + + final int? offertaUuid; + + final int? $all; +} + +class ContrattoEnelXAssicurazioneMinAggregateOutputType { + const ContrattoEnelXAssicurazioneMinAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + factory ContrattoEnelXAssicurazioneMinAggregateOutputType.fromJson( + Map json) => + ContrattoEnelXAssicurazioneMinAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final String? domicilioUuid; + + final String? offertaUuid; +} + +class ContrattoEnelXAssicurazioneMaxAggregateOutputType { + const ContrattoEnelXAssicurazioneMaxAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + factory ContrattoEnelXAssicurazioneMaxAggregateOutputType.fromJson( + Map json) => + ContrattoEnelXAssicurazioneMaxAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final String? domicilioUuid; + + final String? offertaUuid; +} + +class ContrattoEnelXAssicurazioneGroupByOutputType { + const ContrattoEnelXAssicurazioneGroupByOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + factory ContrattoEnelXAssicurazioneGroupByOutputType.fromJson(Map json) => + ContrattoEnelXAssicurazioneGroupByOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + $count: json['_count'] is Map + ? _i2.ContrattoEnelXAssicurazioneCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelXAssicurazioneMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final String? domicilioUuid; + + final String? offertaUuid; + + final _i2.ContrattoEnelXAssicurazioneCountAggregateOutputType? $count; + + final _i2.ContrattoEnelXAssicurazioneMinAggregateOutputType? $min; + + final _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputType? $max; +} + +class ContrattoEnelXAssicurazioneCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCountOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneMaxOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneMinOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneOrderByWithAggregationInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.ContrattoEnelXAssicurazioneCountOrderByAggregateInput? $count; + + final _i2.ContrattoEnelXAssicurazioneMaxOrderByAggregateInput? $max; + + final _i2.ContrattoEnelXAssicurazioneMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput>? + OR; + + final _i1.PrismaUnion< + _i2.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput, + Iterable< + _i2.ContrattoEnelXAssicurazioneScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoContrattoId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneCountAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.$all, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_all': $all, + }; +} + +class ContrattoEnelXAssicurazioneGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneGroupByOutputTypeCountArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelXAssicurazioneMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneMinAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneGroupByOutputTypeMinArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelXAssicurazioneMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneMaxAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelXAssicurazioneGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelXAssicurazioneGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelXAssicurazioneGroupByOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateContrattoEnelXAssicurazione { + const AggregateContrattoEnelXAssicurazione({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateContrattoEnelXAssicurazione.fromJson(Map json) => + AggregateContrattoEnelXAssicurazione( + $count: json['_count'] is Map + ? _i2.ContrattoEnelXAssicurazioneCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelXAssicurazioneMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.ContrattoEnelXAssicurazioneCountAggregateOutputType? $count; + + final _i2.ContrattoEnelXAssicurazioneMinAggregateOutputType? $min; + + final _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputType? $max; +} + +class AggregateContrattoEnelXAssicurazioneCountArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelXAssicurazioneCountArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelXAssicurazioneMinArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelXAssicurazioneMinArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelXAssicurazioneMaxArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelXAssicurazioneMaxArgs({this.select}); + + final _i2.ContrattoEnelXAssicurazioneMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelXAssicurazioneSelect + implements _i1.JsonConvertible> { + const AggregateContrattoEnelXAssicurazioneSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1 + .PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoEnelFibraCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateInput({ + this.uuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + required this.stato, + required this.contratto, + this.offerta, + this.domicilio, + }); + + final String? uuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoCreateNestedOneWithoutContrattiEnelFibraInput stato; + + final _i2.ContrattoCreateNestedOneWithoutContrattiEnelFibraInput contratto; + + final _i2.OffertaCreateNestedOneWithoutContrattiEnelFibraInput? offerta; + + final _i2.DomicilioCreateNestedOneWithoutContrattiEnelFibraInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraUncheckedCreateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedCreateInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCreateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCreateManyInput({ + this.uuid, + required this.statoContrattoId, + required this.contrattoUuid, + required this.servizioContrattoEnelFibra, + required this.tipoContrattoEnelFibra, + required this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final String? uuid; + + final String statoContrattoId; + + final String contrattoUuid; + + final _i3.ServizioContrattoEnelFibra servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUpdateInput({ + this.uuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.stato, + this.contratto, + this.offerta, + this.domicilio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i2.StatoContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + stato; + + final _i2.ContrattoUpdateOneRequiredWithoutContrattiEnelFibraNestedInput? + contratto; + + final _i2.OffertaUpdateOneWithoutContrattiEnelFibraNestedInput? offerta; + + final _i2.DomicilioUpdateOneWithoutContrattiEnelFibraNestedInput? domicilio; + + @override + Map toJson() => { + 'uuid': uuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'stato': stato, + 'contratto': contratto, + 'offerta': offerta, + 'domicilio': domicilio, + }; +} + +class ContrattoEnelFibraUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraUncheckedUpdateManyInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + statoContrattoId; + + final _i1.PrismaUnion? + contrattoUuid; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.EnumServizioContrattoEnelFibraFieldUpdateOperationsInput>? + servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.EnumTipoContrattoEnelFibraFieldUpdateOperationsInput>? + tipoContrattoEnelFibra; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.EnumTecnologiaContrattoEnelFibraFieldUpdateOperationsInput>? + tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCountAggregateOutputType { + const ContrattoEnelFibraCountAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.$all, + }); + + factory ContrattoEnelFibraCountAggregateOutputType.fromJson(Map json) => + ContrattoEnelFibraCountAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + servizioContrattoEnelFibra: json['servizioContrattoEnelFibra'], + tipoContrattoEnelFibra: json['tipoContrattoEnelFibra'], + tecnologiaContrattoEnelFibra: json['tecnologiaContrattoEnelFibra'], + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? statoContrattoId; + + final int? contrattoUuid; + + final int? servizioContrattoEnelFibra; + + final int? tipoContrattoEnelFibra; + + final int? tecnologiaContrattoEnelFibra; + + final int? domicilioUuid; + + final int? offertaUuid; + + final int? $all; +} + +class ContrattoEnelFibraMinAggregateOutputType { + const ContrattoEnelFibraMinAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + factory ContrattoEnelFibraMinAggregateOutputType.fromJson(Map json) => + ContrattoEnelFibraMinAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + servizioContrattoEnelFibra: json['servizioContrattoEnelFibra'] != null + ? _i3.ServizioContrattoEnelFibra.values + .firstWhere((e) => e.name == json['servizioContrattoEnelFibra']) + : null, + tipoContrattoEnelFibra: json['tipoContrattoEnelFibra'] != null + ? _i3.TipoContrattoEnelFibra.values + .firstWhere((e) => e.name == json['tipoContrattoEnelFibra']) + : null, + tecnologiaContrattoEnelFibra: + json['tecnologiaContrattoEnelFibra'] != null + ? _i3.TecnologiaContrattoEnelFibra.values.firstWhere( + (e) => e.name == json['tecnologiaContrattoEnelFibra']) + : null, + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final _i3.ServizioContrattoEnelFibra? servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra? tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra? tecnologiaContrattoEnelFibra; + + final String? domicilioUuid; + + final String? offertaUuid; +} + +class ContrattoEnelFibraMaxAggregateOutputType { + const ContrattoEnelFibraMaxAggregateOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + factory ContrattoEnelFibraMaxAggregateOutputType.fromJson(Map json) => + ContrattoEnelFibraMaxAggregateOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + servizioContrattoEnelFibra: json['servizioContrattoEnelFibra'] != null + ? _i3.ServizioContrattoEnelFibra.values + .firstWhere((e) => e.name == json['servizioContrattoEnelFibra']) + : null, + tipoContrattoEnelFibra: json['tipoContrattoEnelFibra'] != null + ? _i3.TipoContrattoEnelFibra.values + .firstWhere((e) => e.name == json['tipoContrattoEnelFibra']) + : null, + tecnologiaContrattoEnelFibra: + json['tecnologiaContrattoEnelFibra'] != null + ? _i3.TecnologiaContrattoEnelFibra.values.firstWhere( + (e) => e.name == json['tecnologiaContrattoEnelFibra']) + : null, + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final _i3.ServizioContrattoEnelFibra? servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra? tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra? tecnologiaContrattoEnelFibra; + + final String? domicilioUuid; + + final String? offertaUuid; +} + +class ContrattoEnelFibraGroupByOutputType { + const ContrattoEnelFibraGroupByOutputType({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + factory ContrattoEnelFibraGroupByOutputType.fromJson(Map json) => + ContrattoEnelFibraGroupByOutputType( + uuid: json['uuid'], + statoContrattoId: json['statoContrattoId'], + contrattoUuid: json['contrattoUuid'], + servizioContrattoEnelFibra: json['servizioContrattoEnelFibra'] != null + ? _i3.ServizioContrattoEnelFibra.values + .firstWhere((e) => e.name == json['servizioContrattoEnelFibra']) + : null, + tipoContrattoEnelFibra: json['tipoContrattoEnelFibra'] != null + ? _i3.TipoContrattoEnelFibra.values + .firstWhere((e) => e.name == json['tipoContrattoEnelFibra']) + : null, + tecnologiaContrattoEnelFibra: + json['tecnologiaContrattoEnelFibra'] != null + ? _i3.TecnologiaContrattoEnelFibra.values.firstWhere( + (e) => e.name == json['tecnologiaContrattoEnelFibra']) + : null, + domicilioUuid: json['domicilioUuid'], + offertaUuid: json['offertaUuid'], + $count: json['_count'] is Map + ? _i2.ContrattoEnelFibraCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelFibraMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelFibraMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final String? uuid; + + final String? statoContrattoId; + + final String? contrattoUuid; + + final _i3.ServizioContrattoEnelFibra? servizioContrattoEnelFibra; + + final _i3.TipoContrattoEnelFibra? tipoContrattoEnelFibra; + + final _i3.TecnologiaContrattoEnelFibra? tecnologiaContrattoEnelFibra; + + final String? domicilioUuid; + + final String? offertaUuid; + + final _i2.ContrattoEnelFibraCountAggregateOutputType? $count; + + final _i2.ContrattoEnelFibraMinAggregateOutputType? $min; + + final _i2.ContrattoEnelFibraMaxAggregateOutputType? $max; +} + +class ContrattoEnelFibraCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCountOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? servizioContrattoEnelFibra; + + final _i2.SortOrder? tipoContrattoEnelFibra; + + final _i2.SortOrder? tecnologiaContrattoEnelFibra; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraMaxOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? servizioContrattoEnelFibra; + + final _i2.SortOrder? tipoContrattoEnelFibra; + + final _i2.SortOrder? tecnologiaContrattoEnelFibra; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraMinOrderByAggregateInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? servizioContrattoEnelFibra; + + final _i2.SortOrder? tipoContrattoEnelFibra; + + final _i2.SortOrder? tecnologiaContrattoEnelFibra; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraOrderByWithAggregationInput({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? statoContrattoId; + + final _i2.SortOrder? contrattoUuid; + + final _i2.SortOrder? servizioContrattoEnelFibra; + + final _i2.SortOrder? tipoContrattoEnelFibra; + + final _i2.SortOrder? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? offertaUuid; + + final _i2.ContrattoEnelFibraCountOrderByAggregateInput? $count; + + final _i2.ContrattoEnelFibraMaxOrderByAggregateInput? $max; + + final _i2.ContrattoEnelFibraMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedEnumServizioContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumServizioContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i1.Reference<_i3.ServizioContrattoEnelFibra>>? equals; + + final Iterable<_i3.ServizioContrattoEnelFibra>? $in; + + final Iterable<_i3.ServizioContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.NestedEnumServizioContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumServizioContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumServizioContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumServizioContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumServizioContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i1.Reference<_i3.ServizioContrattoEnelFibra>>? equals; + + final Iterable<_i3.ServizioContrattoEnelFibra>? $in; + + final Iterable<_i3.ServizioContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.ServizioContrattoEnelFibra, + _i2.NestedEnumServizioContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumServizioContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumServizioContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedEnumTipoContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i1.Reference<_i3.TipoContrattoEnelFibra>>? equals; + + final Iterable<_i3.TipoContrattoEnelFibra>? $in; + + final Iterable<_i3.TipoContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.NestedEnumTipoContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumTipoContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTipoContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTipoContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i1.Reference<_i3.TipoContrattoEnelFibra>>? equals; + + final Iterable<_i3.TipoContrattoEnelFibra>? $in; + + final Iterable<_i3.TipoContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TipoContrattoEnelFibra, + _i2.NestedEnumTipoContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumTipoContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NestedEnumTecnologiaContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTecnologiaContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i1.Reference<_i3.TecnologiaContrattoEnelFibra>>? equals; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? $in; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.NestedEnumTecnologiaContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTecnologiaContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumTecnologiaContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTecnologiaContrattoEnelFibraWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTecnologiaContrattoEnelFibraWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i1.Reference<_i3.TecnologiaContrattoEnelFibra>>? equals; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? $in; + + final Iterable<_i3.TecnologiaContrattoEnelFibra>? notIn; + + final _i1.PrismaUnion<_i3.TecnologiaContrattoEnelFibra, + _i2.NestedEnumTecnologiaContrattoEnelFibraWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTecnologiaContrattoEnelFibraFilter? $min; + + final _i2.NestedEnumTecnologiaContrattoEnelFibraFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class ContrattoEnelFibraScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ContrattoEnelFibraScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ContrattoEnelFibraScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ContrattoEnelFibraScalarWhereWithAggregatesInput, + Iterable<_i2.ContrattoEnelFibraScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoContrattoId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? contrattoUuid; + + final _i1.PrismaUnion<_i2.EnumServizioContrattoEnelFibraWithAggregatesFilter, + _i3.ServizioContrattoEnelFibra>? servizioContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.EnumTipoContrattoEnelFibraWithAggregatesFilter, + _i3.TipoContrattoEnelFibra>? tipoContrattoEnelFibra; + + final _i1.PrismaUnion< + _i2.EnumTecnologiaContrattoEnelFibraWithAggregatesFilter, + _i3.TecnologiaContrattoEnelFibra>? tecnologiaContrattoEnelFibra; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? offertaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelFibraCountAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.$all, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? servizioContrattoEnelFibra; + + final bool? tipoContrattoEnelFibra; + + final bool? tecnologiaContrattoEnelFibra; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_all': $all, + }; +} + +class ContrattoEnelFibraGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraGroupByOutputTypeCountArgs({this.select}); + + final _i2.ContrattoEnelFibraCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelFibraMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelFibraMinAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? servizioContrattoEnelFibra; + + final bool? tipoContrattoEnelFibra; + + final bool? tecnologiaContrattoEnelFibra; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraGroupByOutputTypeMinArgs({this.select}); + + final _i2.ContrattoEnelFibraMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelFibraMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelFibraMaxAggregateOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? servizioContrattoEnelFibra; + + final bool? tipoContrattoEnelFibra; + + final bool? tecnologiaContrattoEnelFibra; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + }; +} + +class ContrattoEnelFibraGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ContrattoEnelFibraGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ContrattoEnelFibraMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ContrattoEnelFibraGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ContrattoEnelFibraGroupByOutputTypeSelect({ + this.uuid, + this.statoContrattoId, + this.contrattoUuid, + this.servizioContrattoEnelFibra, + this.tipoContrattoEnelFibra, + this.tecnologiaContrattoEnelFibra, + this.domicilioUuid, + this.offertaUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? statoContrattoId; + + final bool? contrattoUuid; + + final bool? servizioContrattoEnelFibra; + + final bool? tipoContrattoEnelFibra; + + final bool? tecnologiaContrattoEnelFibra; + + final bool? domicilioUuid; + + final bool? offertaUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'statoContrattoId': statoContrattoId, + 'contrattoUuid': contrattoUuid, + 'servizioContrattoEnelFibra': servizioContrattoEnelFibra, + 'tipoContrattoEnelFibra': tipoContrattoEnelFibra, + 'tecnologiaContrattoEnelFibra': tecnologiaContrattoEnelFibra, + 'domicilioUuid': domicilioUuid, + 'offertaUuid': offertaUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateContrattoEnelFibra { + const AggregateContrattoEnelFibra({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateContrattoEnelFibra.fromJson(Map json) => + AggregateContrattoEnelFibra( + $count: json['_count'] is Map + ? _i2.ContrattoEnelFibraCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ContrattoEnelFibraMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ContrattoEnelFibraMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.ContrattoEnelFibraCountAggregateOutputType? $count; + + final _i2.ContrattoEnelFibraMinAggregateOutputType? $min; + + final _i2.ContrattoEnelFibraMaxAggregateOutputType? $max; +} + +class AggregateContrattoEnelFibraCountArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelFibraCountArgs({this.select}); + + final _i2.ContrattoEnelFibraCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelFibraMinArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelFibraMinArgs({this.select}); + + final _i2.ContrattoEnelFibraMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelFibraMaxArgs + implements _i1.JsonConvertible> { + const AggregateContrattoEnelFibraMaxArgs({this.select}); + + final _i2.ContrattoEnelFibraMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateContrattoEnelFibraSelect + implements _i1.JsonConvertible> { + const AggregateContrattoEnelFibraSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum ClasseMisuratoreGasScalar implements _i1.PrismaEnum, _i1.Reference { + portataMin('portataMin', 'ClasseMisuratoreGas'), + portataNominale('portataNominale', 'ClasseMisuratoreGas'), + portataMax('portataMax', 'ClasseMisuratoreGas'), + id('id', 'ClasseMisuratoreGas'), + classe('classe', 'ClasseMisuratoreGas'); + + const ClasseMisuratoreGasScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornituraGasCreateWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasCreateWithoutClasseMisuratoreInput({ + this.uuid, + required this.pdr, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + required this.fornitura, + }); + + final String? uuid; + + final String pdr; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ConsumoAnnuoGasCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + final _i2.FornituraCreateNestedOneWithoutFornituraGasInput fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedCreateWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateWithoutClasseMisuratoreInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + final _i2.ConsumoAnnuoGasUncheckedCreateNestedOneWithoutFornituraGasInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedCreateNestedManyWithoutFornituraGasInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasCreateOrConnectWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasCreateOrConnectWithoutClasseMisuratoreInput({ + required this.where, + required this.create, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class FornituraGasCreateManyClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasCreateManyClasseMisuratoreInput({ + this.uuid, + required this.pdr, + required this.fornituraUuid, + this.matricolaContatore, + this.remi, + }); + + final String? uuid; + + final String pdr; + + final String fornituraUuid; + + final _i1.PrismaUnion? matricolaContatore; + + final _i1.PrismaUnion? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasCreateManyClasseMisuratoreInputEnvelope + implements _i1.JsonConvertible> { + const FornituraGasCreateManyClasseMisuratoreInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.FornituraGasCreateManyClasseMisuratoreInput, + Iterable<_i2.FornituraGasCreateManyClasseMisuratoreInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class FornituraGasCreateNestedManyWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasCreateNestedManyWithoutClasseMisuratoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraGasCreateWithoutClasseMisuratoreInput>, + _i1.PrismaUnion< + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUncheckedCreateWithoutClasseMisuratoreInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput>>? + connectOrCreate; + + final _i2.FornituraGasCreateManyClasseMisuratoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ClasseMisuratoreGasCreateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCreateInput({ + required this.portataMin, + required this.portataNominale, + required this.portataMax, + required this.id, + required this.classe, + this.fornituraGas, + }); + + final double portataMin; + + final double portataNominale; + + final double portataMax; + + final String id; + + final String classe; + + final _i2.FornituraGasCreateNestedManyWithoutClasseMisuratoreInput? + fornituraGas; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraGasUncheckedCreateNestedManyWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedCreateNestedManyWithoutClasseMisuratoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraGasCreateWithoutClasseMisuratoreInput>, + _i1.PrismaUnion< + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUncheckedCreateWithoutClasseMisuratoreInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput>>? + connectOrCreate; + + final _i2.FornituraGasCreateManyClasseMisuratoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ClasseMisuratoreGasUncheckedCreateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUncheckedCreateInput({ + required this.portataMin, + required this.portataNominale, + required this.portataMax, + required this.id, + required this.classe, + this.fornituraGas, + }); + + final double portataMin; + + final double portataNominale; + + final double portataMax; + + final String id; + + final String classe; + + final _i2.FornituraGasUncheckedCreateNestedManyWithoutClasseMisuratoreInput? + fornituraGas; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + }; +} + +class ClasseMisuratoreGasCreateManyInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCreateManyInput({ + required this.portataMin, + required this.portataNominale, + required this.portataMax, + required this.id, + required this.classe, + }); + + final double portataMin; + + final double portataNominale; + + final double portataMax; + + final String id; + + final String classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class FornituraGasUpdateWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateWithoutClasseMisuratoreInput({ + this.uuid, + this.pdr, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + this.fornitura, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ConsumoAnnuoGasUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + final _i2.FornituraUpdateOneRequiredWithoutFornituraGasNestedInput? fornitura; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + 'fornitura': fornitura, + }; +} + +class FornituraGasUncheckedUpdateWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateWithoutClasseMisuratoreInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.matricolaContatore, + this.remi, + this.consumoAnnuoGas, + this.contrattiEnelGas, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + final _i2.ConsumoAnnuoGasUncheckedUpdateOneWithoutFornituraGasNestedInput? + consumoAnnuoGas; + + final _i2.ContrattoEnelGasUncheckedUpdateManyWithoutFornituraGasNestedInput? + contrattiEnelGas; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + 'consumoAnnuoGas': consumoAnnuoGas, + 'contrattiEnelGas': contrattiEnelGas, + }; +} + +class FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutClasseMisuratoreInput, + _i2.FornituraGasUncheckedUpdateWithoutClasseMisuratoreInput> update; + + final _i1.PrismaUnion<_i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraGasWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateWithoutClasseMisuratoreInput, + _i2.FornituraGasUncheckedUpdateWithoutClasseMisuratoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraGasScalarWhereInput + implements _i1.JsonConvertible> { + const FornituraGasScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.pdr, + this.fornituraUuid, + this.classeMisuratoreGasId, + this.matricolaContatore, + this.remi, + }); + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereInput, + Iterable<_i2.FornituraGasScalarWhereInput>>? AND; + + final Iterable<_i2.FornituraGasScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereInput, + Iterable<_i2.FornituraGasScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringFilter, String>? pdr; + + final _i1.PrismaUnion<_i2.StringFilter, String>? fornituraUuid; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? classeMisuratoreGasId; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? matricolaContatore; + + final _i1.PrismaUnion<_i2.StringNullableFilter, + _i1.PrismaUnion>? remi; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'classeMisuratoreGasId': classeMisuratoreGasId, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreInput({ + this.uuid, + this.pdr, + this.fornituraUuid, + this.matricolaContatore, + this.remi, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? pdr; + + final _i1.PrismaUnion? + fornituraUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? matricolaContatore; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? remi; + + @override + Map toJson() => { + 'uuid': uuid, + 'pdr': pdr, + 'fornituraUuid': fornituraUuid, + 'matricolaContatore': matricolaContatore, + 'remi': remi, + }; +} + +class FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput({ + required this.where, + required this.data, + }); + + final _i2.FornituraGasScalarWhereInput where; + + final _i1.PrismaUnion<_i2.FornituraGasUpdateManyMutationInput, + _i2.FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class FornituraGasUpdateManyWithoutClasseMisuratoreNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUpdateManyWithoutClasseMisuratoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraGasCreateWithoutClasseMisuratoreInput>, + _i1.PrismaUnion< + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUncheckedCreateWithoutClasseMisuratoreInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput>>? + upsert; + + final _i2.FornituraGasCreateManyClasseMisuratoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput>>? + update; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereInput, + Iterable<_i2.FornituraGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ClasseMisuratoreGasUpdateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpdateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + final _i2.FornituraGasUpdateManyWithoutClasseMisuratoreNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + }; +} + +class FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreNestedInput + implements _i1.JsonConvertible> { + const FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.FornituraGasCreateWithoutClasseMisuratoreInput, + _i1.PrismaUnion< + Iterable<_i2.FornituraGasCreateWithoutClasseMisuratoreInput>, + _i1.PrismaUnion< + _i2.FornituraGasUncheckedCreateWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUncheckedCreateWithoutClasseMisuratoreInput>>>>? + create; + + final _i1.PrismaUnion< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasCreateOrConnectWithoutClasseMisuratoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUpsertWithWhereUniqueWithoutClasseMisuratoreInput>>? + upsert; + + final _i2.FornituraGasCreateManyClasseMisuratoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.FornituraGasWhereUniqueInput, + Iterable<_i2.FornituraGasWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput, + Iterable< + _i2 + .FornituraGasUpdateWithWhereUniqueWithoutClasseMisuratoreInput>>? + update; + + final _i1.PrismaUnion< + _i2.FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput, + Iterable< + _i2.FornituraGasUpdateManyWithWhereWithoutClasseMisuratoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.FornituraGasScalarWhereInput, + Iterable<_i2.FornituraGasScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ClasseMisuratoreGasUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUncheckedUpdateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.fornituraGas, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + final _i2.FornituraGasUncheckedUpdateManyWithoutClasseMisuratoreNestedInput? + fornituraGas; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + 'fornituraGas': fornituraGas, + }; +} + +class ClasseMisuratoreGasUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUpdateManyMutationInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasUncheckedUpdateManyInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i1.PrismaUnion? + portataMin; + + final _i1.PrismaUnion? + portataNominale; + + final _i1.PrismaUnion? + portataMax; + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasCountAggregateOutputType { + const ClasseMisuratoreGasCountAggregateOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.$all, + }); + + factory ClasseMisuratoreGasCountAggregateOutputType.fromJson(Map json) => + ClasseMisuratoreGasCountAggregateOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + id: json['id'], + classe: json['classe'], + $all: json['_all'], + ); + + final int? portataMin; + + final int? portataNominale; + + final int? portataMax; + + final int? id; + + final int? classe; + + final int? $all; +} + +class ClasseMisuratoreGasAvgAggregateOutputType { + const ClasseMisuratoreGasAvgAggregateOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + factory ClasseMisuratoreGasAvgAggregateOutputType.fromJson(Map json) => + ClasseMisuratoreGasAvgAggregateOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; +} + +class ClasseMisuratoreGasSumAggregateOutputType { + const ClasseMisuratoreGasSumAggregateOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + factory ClasseMisuratoreGasSumAggregateOutputType.fromJson(Map json) => + ClasseMisuratoreGasSumAggregateOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; +} + +class ClasseMisuratoreGasMinAggregateOutputType { + const ClasseMisuratoreGasMinAggregateOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + factory ClasseMisuratoreGasMinAggregateOutputType.fromJson(Map json) => + ClasseMisuratoreGasMinAggregateOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + id: json['id'], + classe: json['classe'], + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; + + final String? id; + + final String? classe; +} + +class ClasseMisuratoreGasMaxAggregateOutputType { + const ClasseMisuratoreGasMaxAggregateOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + factory ClasseMisuratoreGasMaxAggregateOutputType.fromJson(Map json) => + ClasseMisuratoreGasMaxAggregateOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + id: json['id'], + classe: json['classe'], + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; + + final String? id; + + final String? classe; +} + +class ClasseMisuratoreGasGroupByOutputType { + const ClasseMisuratoreGasGroupByOutputType({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory ClasseMisuratoreGasGroupByOutputType.fromJson(Map json) => + ClasseMisuratoreGasGroupByOutputType( + portataMin: json['portataMin'], + portataNominale: json['portataNominale'], + portataMax: json['portataMax'], + id: json['id'], + classe: json['classe'], + $count: json['_count'] is Map + ? _i2.ClasseMisuratoreGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ClasseMisuratoreGasAvgAggregateOutputType.fromJson( + json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ClasseMisuratoreGasSumAggregateOutputType.fromJson( + json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ClasseMisuratoreGasMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ClasseMisuratoreGasMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final double? portataMin; + + final double? portataNominale; + + final double? portataMax; + + final String? id; + + final String? classe; + + final _i2.ClasseMisuratoreGasCountAggregateOutputType? $count; + + final _i2.ClasseMisuratoreGasAvgAggregateOutputType? $avg; + + final _i2.ClasseMisuratoreGasSumAggregateOutputType? $sum; + + final _i2.ClasseMisuratoreGasMinAggregateOutputType? $min; + + final _i2.ClasseMisuratoreGasMaxAggregateOutputType? $max; +} + +class ClasseMisuratoreGasCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCountOrderByAggregateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + final _i2.SortOrder? id; + + final _i2.SortOrder? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasAvgOrderByAggregateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + }; +} + +class ClasseMisuratoreGasMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasMaxOrderByAggregateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + final _i2.SortOrder? id; + + final _i2.SortOrder? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasMinOrderByAggregateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + final _i2.SortOrder? id; + + final _i2.SortOrder? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasSumOrderByAggregateInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + }; +} + +class ClasseMisuratoreGasOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasOrderByWithAggregationInput({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? portataMin; + + final _i2.SortOrder? portataNominale; + + final _i2.SortOrder? portataMax; + + final _i2.SortOrder? id; + + final _i2.SortOrder? classe; + + final _i2.ClasseMisuratoreGasCountOrderByAggregateInput? $count; + + final _i2.ClasseMisuratoreGasAvgOrderByAggregateInput? $avg; + + final _i2.ClasseMisuratoreGasMaxOrderByAggregateInput? $max; + + final _i2.ClasseMisuratoreGasMinOrderByAggregateInput? $min; + + final _i2.ClasseMisuratoreGasSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class ClasseMisuratoreGasScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasScalarWhereWithAggregatesInput, + Iterable<_i2.ClasseMisuratoreGasScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ClasseMisuratoreGasScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ClasseMisuratoreGasScalarWhereWithAggregatesInput, + Iterable<_i2.ClasseMisuratoreGasScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? portataMin; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? portataNominale; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? portataMax; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? classe; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasCountAggregateOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.$all, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + final bool? id; + + final bool? classe; + + final bool? $all; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + '_all': $all, + }; +} + +class ClasseMisuratoreGasGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeCountArgs({this.select}); + + final _i2.ClasseMisuratoreGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasAvgAggregateOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + }; +} + +class ClasseMisuratoreGasGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeAvgArgs({this.select}); + + final _i2.ClasseMisuratoreGasAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasSumAggregateOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + }; +} + +class ClasseMisuratoreGasGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeSumArgs({this.select}); + + final _i2.ClasseMisuratoreGasSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasMinAggregateOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + final bool? id; + + final bool? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeMinArgs({this.select}); + + final _i2.ClasseMisuratoreGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasMaxAggregateOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + final bool? id; + + final bool? classe; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + }; +} + +class ClasseMisuratoreGasGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ClasseMisuratoreGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ClasseMisuratoreGasGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ClasseMisuratoreGasGroupByOutputTypeSelect({ + this.portataMin, + this.portataNominale, + this.portataMax, + this.id, + this.classe, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? portataMin; + + final bool? portataNominale; + + final bool? portataMax; + + final bool? id; + + final bool? classe; + + final _i1 + .PrismaUnion? + $count; + + final _i1.PrismaUnion? + $avg; + + final _i1.PrismaUnion? + $sum; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'portataMin': portataMin, + 'portataNominale': portataNominale, + 'portataMax': portataMax, + 'id': id, + 'classe': classe, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateClasseMisuratoreGas { + const AggregateClasseMisuratoreGas({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateClasseMisuratoreGas.fromJson(Map json) => + AggregateClasseMisuratoreGas( + $count: json['_count'] is Map + ? _i2.ClasseMisuratoreGasCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ClasseMisuratoreGasAvgAggregateOutputType.fromJson( + json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ClasseMisuratoreGasSumAggregateOutputType.fromJson( + json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ClasseMisuratoreGasMinAggregateOutputType.fromJson( + json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ClasseMisuratoreGasMaxAggregateOutputType.fromJson( + json['_max']) + : null, + ); + + final _i2.ClasseMisuratoreGasCountAggregateOutputType? $count; + + final _i2.ClasseMisuratoreGasAvgAggregateOutputType? $avg; + + final _i2.ClasseMisuratoreGasSumAggregateOutputType? $sum; + + final _i2.ClasseMisuratoreGasMinAggregateOutputType? $min; + + final _i2.ClasseMisuratoreGasMaxAggregateOutputType? $max; +} + +class AggregateClasseMisuratoreGasCountArgs + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasCountArgs({this.select}); + + final _i2.ClasseMisuratoreGasCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateClasseMisuratoreGasAvgArgs + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasAvgArgs({this.select}); + + final _i2.ClasseMisuratoreGasAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateClasseMisuratoreGasSumArgs + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasSumArgs({this.select}); + + final _i2.ClasseMisuratoreGasSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateClasseMisuratoreGasMinArgs + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasMinArgs({this.select}); + + final _i2.ClasseMisuratoreGasMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateClasseMisuratoreGasMaxArgs + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasMaxArgs({this.select}); + + final _i2.ClasseMisuratoreGasMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateClasseMisuratoreGasSelect + implements _i1.JsonConvertible> { + const AggregateClasseMisuratoreGasSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +enum FornitoreScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'Fornitore'), + nome('nome', 'Fornitore'); + + const FornitoreScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class FornitoreCreateInput + implements _i1.JsonConvertible> { + const FornitoreCreateInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoCreateNestedManyWithoutFornitoreInput? serviziEwo; + + final _i2.ModuloContrattoCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + final _i2.ProdottoCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUncheckedCreateInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedCreateInput({ + required this.id, + required this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ServizioEwoUncheckedCreateNestedManyWithoutFornitoreInput? + serviziEwo; + + final _i2.ModuloContrattoUncheckedCreateNestedManyWithoutFornitoreInput? + moduliContratto; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutFornitoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreCreateManyInput + implements _i1.JsonConvertible> { + const FornitoreCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreUpdateInput + implements _i1.JsonConvertible> { + const FornitoreUpdateInput({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUpdateManyWithoutFornitoreNestedInput? serviziEwo; + + final _i2.ModuloContrattoUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + final _i2.ProdottoUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUncheckedUpdateInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedUpdateInput({ + this.id, + this.nome, + this.serviziEwo, + this.moduliContratto, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ServizioEwoUncheckedUpdateManyWithoutFornitoreNestedInput? + serviziEwo; + + final _i2.ModuloContrattoUncheckedUpdateManyWithoutFornitoreNestedInput? + moduliContratto; + + final _i2.ProdottoUncheckedUpdateManyWithoutFornitoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'serviziEwo': serviziEwo, + 'moduliContratto': moduliContratto, + 'prodotti': prodotti, + }; +} + +class FornitoreUpdateManyMutationInput + implements _i1.JsonConvertible> { + const FornitoreUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const FornitoreUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreCountAggregateOutputType { + const FornitoreCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory FornitoreCountAggregateOutputType.fromJson(Map json) => + FornitoreCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class FornitoreMinAggregateOutputType { + const FornitoreMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory FornitoreMinAggregateOutputType.fromJson(Map json) => + FornitoreMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class FornitoreMaxAggregateOutputType { + const FornitoreMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory FornitoreMaxAggregateOutputType.fromJson(Map json) => + FornitoreMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class FornitoreGroupByOutputType { + const FornitoreGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory FornitoreGroupByOutputType.fromJson(Map json) => + FornitoreGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.FornitoreCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornitoreMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornitoreMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.FornitoreCountAggregateOutputType? $count; + + final _i2.FornitoreMinAggregateOutputType? $min; + + final _i2.FornitoreMaxAggregateOutputType? $max; +} + +class FornitoreCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornitoreCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornitoreMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const FornitoreMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const FornitoreOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.FornitoreCountOrderByAggregateInput? $count; + + final _i2.FornitoreMaxOrderByAggregateInput? $max; + + final _i2.FornitoreMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class FornitoreScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const FornitoreScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.FornitoreScalarWhereWithAggregatesInput, + Iterable<_i2.FornitoreScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.FornitoreScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.FornitoreScalarWhereWithAggregatesInput, + Iterable<_i2.FornitoreScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class FornitoreCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornitoreCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class FornitoreGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const FornitoreGroupByOutputTypeCountArgs({this.select}); + + final _i2.FornitoreCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornitoreMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornitoreMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const FornitoreGroupByOutputTypeMinArgs({this.select}); + + final _i2.FornitoreMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornitoreMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const FornitoreMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class FornitoreGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const FornitoreGroupByOutputTypeMaxArgs({this.select}); + + final _i2.FornitoreMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class FornitoreGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const FornitoreGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateFornitore { + const AggregateFornitore({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateFornitore.fromJson(Map json) => AggregateFornitore( + $count: json['_count'] is Map + ? _i2.FornitoreCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.FornitoreMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.FornitoreMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.FornitoreCountAggregateOutputType? $count; + + final _i2.FornitoreMinAggregateOutputType? $min; + + final _i2.FornitoreMaxAggregateOutputType? $max; +} + +class AggregateFornitoreCountArgs + implements _i1.JsonConvertible> { + const AggregateFornitoreCountArgs({this.select}); + + final _i2.FornitoreCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornitoreMinArgs + implements _i1.JsonConvertible> { + const AggregateFornitoreMinArgs({this.select}); + + final _i2.FornitoreMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornitoreMaxArgs + implements _i1.JsonConvertible> { + const AggregateFornitoreMaxArgs({this.select}); + + final _i2.FornitoreMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateFornitoreSelect + implements _i1.JsonConvertible> { + const AggregateFornitoreSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class OrdineCreateInput implements _i1.JsonConvertible> { + const OrdineCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.StatoOrdineCreateNestedOneWithoutOrdiniInput? statoOrdine; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedCreateInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateManyInput + implements _i1.JsonConvertible> { + const OrdineCreateManyInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? statoOrdineId; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateInput implements _i1.JsonConvertible> { + const OrdineUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.domicilio, + this.statoOrdine, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.StatoOrdineUpdateOneWithoutOrdiniNestedInput? statoOrdine; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOrdine': statoOrdine, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedUpdateInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? statoOrdineId; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCountAggregateOutputType { + const OrdineCountAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.$all, + }); + + factory OrdineCountAggregateOutputType.fromJson(Map json) => + OrdineCountAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + valore: json['valore'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOrdineId: json['statoOrdineId'], + leadUuid: json['leadUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + $all: json['_all'], + ); + + final int? uuid; + + final int? codice; + + final int? dataInserimento; + + final int? valore; + + final int? soggettoUuid; + + final int? domicilioUuid; + + final int? statoOrdineId; + + final int? leadUuid; + + final int? utenteUuid; + + final int? negozioCodice; + + final int? $all; +} + +class OrdineAvgAggregateOutputType { + const OrdineAvgAggregateOutputType({this.valore}); + + factory OrdineAvgAggregateOutputType.fromJson(Map json) => + OrdineAvgAggregateOutputType(valore: json['valore']); + + final double? valore; +} + +class OrdineSumAggregateOutputType { + const OrdineSumAggregateOutputType({this.valore}); + + factory OrdineSumAggregateOutputType.fromJson(Map json) => + OrdineSumAggregateOutputType(valore: json['valore']); + + final double? valore; +} + +class OrdineMinAggregateOutputType { + const OrdineMinAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + factory OrdineMinAggregateOutputType.fromJson(Map json) => + OrdineMinAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + valore: json['valore'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOrdineId: json['statoOrdineId'], + leadUuid: json['leadUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final double? valore; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOrdineId; + + final String? leadUuid; + + final String? utenteUuid; + + final String? negozioCodice; +} + +class OrdineMaxAggregateOutputType { + const OrdineMaxAggregateOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + factory OrdineMaxAggregateOutputType.fromJson(Map json) => + OrdineMaxAggregateOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + valore: json['valore'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOrdineId: json['statoOrdineId'], + leadUuid: json['leadUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final double? valore; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOrdineId; + + final String? leadUuid; + + final String? utenteUuid; + + final String? negozioCodice; +} + +class OrdineGroupByOutputType { + const OrdineGroupByOutputType({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory OrdineGroupByOutputType.fromJson(Map json) => OrdineGroupByOutputType( + uuid: json['uuid'], + codice: json['codice'], + dataInserimento: json['dataInserimento'], + valore: json['valore'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOrdineId: json['statoOrdineId'], + leadUuid: json['leadUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + $count: json['_count'] is Map + ? _i2.OrdineCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.OrdineAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.OrdineSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.OrdineMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OrdineMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? codice; + + final DateTime? dataInserimento; + + final double? valore; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOrdineId; + + final String? leadUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final _i2.OrdineCountAggregateOutputType? $count; + + final _i2.OrdineAvgAggregateOutputType? $avg; + + final _i2.OrdineSumAggregateOutputType? $sum; + + final _i2.OrdineMinAggregateOutputType? $min; + + final _i2.OrdineMaxAggregateOutputType? $max; +} + +class OrdineCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const OrdineCountOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? valore; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOrdineId; + + final _i2.SortOrder? leadUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const OrdineAvgOrderByAggregateInput({this.valore}); + + final _i2.SortOrder? valore; + + @override + Map toJson() => {'valore': valore}; +} + +class OrdineMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const OrdineMaxOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? valore; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOrdineId; + + final _i2.SortOrder? leadUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const OrdineMinOrderByAggregateInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? valore; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOrdineId; + + final _i2.SortOrder? leadUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const OrdineSumOrderByAggregateInput({this.valore}); + + final _i2.SortOrder? valore; + + @override + Map toJson() => {'valore': valore}; +} + +class OrdineOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const OrdineOrderByWithAggregationInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? codice; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? valore; + + final _i2.SortOrder? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? statoOrdineId; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? leadUuid; + + final _i2.SortOrder? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i2.OrdineCountOrderByAggregateInput? $count; + + final _i2.OrdineAvgOrderByAggregateInput? $avg; + + final _i2.OrdineMaxOrderByAggregateInput? $max; + + final _i2.OrdineMinOrderByAggregateInput? $min; + + final _i2.OrdineSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class OrdineScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const OrdineScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion<_i2.OrdineScalarWhereWithAggregatesInput, + Iterable<_i2.OrdineScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.OrdineScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereWithAggregatesInput, + Iterable<_i2.OrdineScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? codice; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? + dataInserimento; + + final _i1.PrismaUnion<_i2.FloatWithAggregatesFilter, double>? valore; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? statoOrdineId; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? leadUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioCodice; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineCountAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.$all, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? valore; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOrdineId; + + final bool? leadUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_all': $all, + }; +} + +class OrdineGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeCountArgs({this.select}); + + final _i2.OrdineCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineAvgAggregateOutputTypeSelect({this.valore}); + + final bool? valore; + + @override + Map toJson() => {'valore': valore}; +} + +class OrdineGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeAvgArgs({this.select}); + + final _i2.OrdineAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineSumAggregateOutputTypeSelect({this.valore}); + + final bool? valore; + + @override + Map toJson() => {'valore': valore}; +} + +class OrdineGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeSumArgs({this.select}); + + final _i2.OrdineSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineMinAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? valore; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOrdineId; + + final bool? leadUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeMinArgs({this.select}); + + final _i2.OrdineMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineMaxAggregateOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? valore; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOrdineId; + + final bool? leadUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeMaxArgs({this.select}); + + final _i2.OrdineMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OrdineGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const OrdineGroupByOutputTypeSelect({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.statoOrdineId, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? codice; + + final bool? dataInserimento; + + final bool? valore; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOrdineId; + + final bool? leadUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOrdineId': statoOrdineId, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateOrdine { + const AggregateOrdine({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateOrdine.fromJson(Map json) => AggregateOrdine( + $count: json['_count'] is Map + ? _i2.OrdineCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.OrdineAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.OrdineSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.OrdineMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OrdineMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.OrdineCountAggregateOutputType? $count; + + final _i2.OrdineAvgAggregateOutputType? $avg; + + final _i2.OrdineSumAggregateOutputType? $sum; + + final _i2.OrdineMinAggregateOutputType? $min; + + final _i2.OrdineMaxAggregateOutputType? $max; +} + +class AggregateOrdineCountArgs + implements _i1.JsonConvertible> { + const AggregateOrdineCountArgs({this.select}); + + final _i2.OrdineCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOrdineAvgArgs + implements _i1.JsonConvertible> { + const AggregateOrdineAvgArgs({this.select}); + + final _i2.OrdineAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOrdineSumArgs + implements _i1.JsonConvertible> { + const AggregateOrdineSumArgs({this.select}); + + final _i2.OrdineSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOrdineMinArgs + implements _i1.JsonConvertible> { + const AggregateOrdineMinArgs({this.select}); + + final _i2.OrdineMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOrdineMaxArgs + implements _i1.JsonConvertible> { + const AggregateOrdineMaxArgs({this.select}); + + final _i2.OrdineMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOrdineSelect + implements _i1.JsonConvertible> { + const AggregateOrdineSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +enum StatoOrdineScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'StatoOrdine'), + nome('nome', 'StatoOrdine'), + tipoStato<_i3.TipoStato>('tipoStato', 'StatoOrdine'), + ordine('ordine', 'StatoOrdine'), + colore('colore', 'StatoOrdine'); + + const StatoOrdineScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class OrdineCreateWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineCreateWithoutStatoOrdineInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + this.prodotti, + required this.soggetto, + this.domicilio, + this.lead, + required this.utente, + this.negozio, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final _i2.ProdottoCreateNestedManyWithoutProdottiOrdinatiInput? prodotti; + + final _i2.SoggettoCreateNestedOneWithoutProdottiOrdinatiInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutProdottiOrdinatiInput? domicilio; + + final _i2.LeadCreateNestedOneWithoutOrdineInput? lead; + + final _i2.UtenteCreateNestedOneWithoutOrdiniInput utente; + + final _i2.NegozioCreateNestedOneWithoutOrdineInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedCreateWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateWithoutStatoOrdineInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProdottiOrdinatiInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineCreateOrConnectWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineCreateOrConnectWithoutStatoOrdineInput({ + required this.where, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutStatoOrdineInput, + _i2.OrdineUncheckedCreateWithoutStatoOrdineInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class OrdineCreateManyStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineCreateManyStatoOrdineInput({ + this.uuid, + required this.codice, + this.dataInserimento, + required this.valore, + required this.soggettoUuid, + this.domicilioUuid, + this.leadUuid, + required this.utenteUuid, + this.negozioCodice, + }); + + final String? uuid; + + final String codice; + + final DateTime? dataInserimento; + + final double valore; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? leadUuid; + + final String utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineCreateManyStatoOrdineInputEnvelope + implements _i1.JsonConvertible> { + const OrdineCreateManyStatoOrdineInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.OrdineCreateManyStatoOrdineInput, + Iterable<_i2.OrdineCreateManyStatoOrdineInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class OrdineCreateNestedManyWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineCreateNestedManyWithoutStatoOrdineInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutStatoOrdineInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutStatoOrdineInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput, + Iterable<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput, + Iterable<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput>>? + connectOrCreate; + + final _i2.OrdineCreateManyStatoOrdineInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoOrdineCreateInput + implements _i1.JsonConvertible> { + const StatoOrdineCreateInput({ + required this.id, + required this.nome, + required this.tipoStato, + required this.ordine, + required this.colore, + this.ordini, + }); + + final String id; + + final String nome; + + final _i3.TipoStato tipoStato; + + final int ordine; + + final String colore; + + final _i2.OrdineCreateNestedManyWithoutStatoOrdineInput? ordini; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class OrdineUncheckedCreateNestedManyWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUncheckedCreateNestedManyWithoutStatoOrdineInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutStatoOrdineInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutStatoOrdineInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput, + Iterable<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput, + Iterable<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput>>? + connectOrCreate; + + final _i2.OrdineCreateManyStatoOrdineInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoOrdineUncheckedCreateInput + implements _i1.JsonConvertible> { + const StatoOrdineUncheckedCreateInput({ + required this.id, + required this.nome, + required this.tipoStato, + required this.ordine, + required this.colore, + this.ordini, + }); + + final String id; + + final String nome; + + final _i3.TipoStato tipoStato; + + final int ordine; + + final String colore; + + final _i2.OrdineUncheckedCreateNestedManyWithoutStatoOrdineInput? ordini; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class StatoOrdineCreateManyInput + implements _i1.JsonConvertible> { + const StatoOrdineCreateManyInput({ + required this.id, + required this.nome, + required this.tipoStato, + required this.ordine, + required this.colore, + }); + + final String id; + + final String nome; + + final _i3.TipoStato tipoStato; + + final int ordine; + + final String colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class OrdineUpdateWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithoutStatoOrdineInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.prodotti, + this.soggetto, + this.domicilio, + this.lead, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i2.ProdottoUpdateManyWithoutProdottiOrdinatiNestedInput? prodotti; + + final _i2.SoggettoUpdateOneRequiredWithoutProdottiOrdinatiNestedInput? + soggetto; + + final _i2.DomicilioUpdateOneWithoutProdottiOrdinatiNestedInput? domicilio; + + final _i2.LeadUpdateOneWithoutOrdineNestedInput? lead; + + final _i2.UtenteUpdateOneRequiredWithoutOrdiniNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutOrdineNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'prodotti': prodotti, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'lead': lead, + 'utente': utente, + 'negozio': negozio, + }; +} + +class OrdineUncheckedUpdateWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateWithoutStatoOrdineInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + this.prodotti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i2.ProdottoUncheckedUpdateManyWithoutProdottiOrdinatiNestedInput? + prodotti; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'prodotti': prodotti, + }; +} + +class OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutStatoOrdineInput, + _i2.OrdineUncheckedUpdateWithoutStatoOrdineInput> update; + + final _i1.PrismaUnion<_i2.OrdineCreateWithoutStatoOrdineInput, + _i2.OrdineUncheckedCreateWithoutStatoOrdineInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithoutStatoOrdineInput, + _i2.OrdineUncheckedUpdateWithoutStatoOrdineInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUncheckedUpdateManyWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutStatoOrdineInput({ + this.uuid, + this.codice, + this.dataInserimento, + this.valore, + this.soggettoUuid, + this.domicilioUuid, + this.leadUuid, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? + dataInserimento; + + final _i1.PrismaUnion? valore; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'codice': codice, + 'dataInserimento': dataInserimento, + 'valore': valore, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'leadUuid': leadUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class OrdineUpdateManyWithWhereWithoutStatoOrdineInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithWhereWithoutStatoOrdineInput({ + required this.where, + required this.data, + }); + + final _i2.OrdineScalarWhereInput where; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyMutationInput, + _i2.OrdineUncheckedUpdateManyWithoutStatoOrdineInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class OrdineUpdateManyWithoutStatoOrdineNestedInput + implements _i1.JsonConvertible> { + const OrdineUpdateManyWithoutStatoOrdineNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutStatoOrdineInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutStatoOrdineInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput, + Iterable<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput, + Iterable<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput>>? upsert; + + final _i2.OrdineCreateManyStatoOrdineInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutStatoOrdineInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoOrdineUpdateInput + implements _i1.JsonConvertible> { + const StatoOrdineUpdateInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + final _i2.OrdineUpdateManyWithoutStatoOrdineNestedInput? ordini; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class OrdineUncheckedUpdateManyWithoutStatoOrdineNestedInput + implements _i1.JsonConvertible> { + const OrdineUncheckedUpdateManyWithoutStatoOrdineNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.OrdineCreateWithoutStatoOrdineInput, + _i1.PrismaUnion< + Iterable<_i2.OrdineCreateWithoutStatoOrdineInput>, + _i1.PrismaUnion<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput, + Iterable<_i2.OrdineUncheckedCreateWithoutStatoOrdineInput>>>>? + create; + + final _i1.PrismaUnion<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput, + Iterable<_i2.OrdineCreateOrConnectWithoutStatoOrdineInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpsertWithWhereUniqueWithoutStatoOrdineInput>>? upsert; + + final _i2.OrdineCreateManyStatoOrdineInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.OrdineWhereUniqueInput, + Iterable<_i2.OrdineWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpdateWithWhereUniqueWithoutStatoOrdineInput>>? update; + + final _i1.PrismaUnion<_i2.OrdineUpdateManyWithWhereWithoutStatoOrdineInput, + Iterable<_i2.OrdineUpdateManyWithWhereWithoutStatoOrdineInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.OrdineScalarWhereInput, + Iterable<_i2.OrdineScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoOrdineUncheckedUpdateInput + implements _i1.JsonConvertible> { + const StatoOrdineUncheckedUpdateInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.ordini, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + final _i2.OrdineUncheckedUpdateManyWithoutStatoOrdineNestedInput? ordini; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'ordini': ordini, + }; +} + +class StatoOrdineUpdateManyMutationInput + implements _i1.JsonConvertible> { + const StatoOrdineUpdateManyMutationInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const StatoOrdineUncheckedUpdateManyInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.EnumTipoStatoFieldUpdateOperationsInput>? + tipoStato; + + final _i1.PrismaUnion? ordine; + + final _i1.PrismaUnion? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineCountAggregateOutputType { + const StatoOrdineCountAggregateOutputType({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.$all, + }); + + factory StatoOrdineCountAggregateOutputType.fromJson(Map json) => + StatoOrdineCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + tipoStato: json['tipoStato'], + ordine: json['ordine'], + colore: json['colore'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? tipoStato; + + final int? ordine; + + final int? colore; + + final int? $all; +} + +class StatoOrdineAvgAggregateOutputType { + const StatoOrdineAvgAggregateOutputType({this.ordine}); + + factory StatoOrdineAvgAggregateOutputType.fromJson(Map json) => + StatoOrdineAvgAggregateOutputType(ordine: json['ordine']); + + final double? ordine; +} + +class StatoOrdineSumAggregateOutputType { + const StatoOrdineSumAggregateOutputType({this.ordine}); + + factory StatoOrdineSumAggregateOutputType.fromJson(Map json) => + StatoOrdineSumAggregateOutputType(ordine: json['ordine']); + + final int? ordine; +} + +class StatoOrdineMinAggregateOutputType { + const StatoOrdineMinAggregateOutputType({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + factory StatoOrdineMinAggregateOutputType.fromJson(Map json) => + StatoOrdineMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + ); + + final String? id; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; +} + +class StatoOrdineMaxAggregateOutputType { + const StatoOrdineMaxAggregateOutputType({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + factory StatoOrdineMaxAggregateOutputType.fromJson(Map json) => + StatoOrdineMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + ); + + final String? id; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; +} + +class StatoOrdineGroupByOutputType { + const StatoOrdineGroupByOutputType({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory StatoOrdineGroupByOutputType.fromJson(Map json) => + StatoOrdineGroupByOutputType( + id: json['id'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + $count: json['_count'] is Map + ? _i2.StatoOrdineCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.StatoOrdineAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.StatoOrdineSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.StatoOrdineMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoOrdineMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final _i2.StatoOrdineCountAggregateOutputType? $count; + + final _i2.StatoOrdineAvgAggregateOutputType? $avg; + + final _i2.StatoOrdineSumAggregateOutputType? $sum; + + final _i2.StatoOrdineMinAggregateOutputType? $min; + + final _i2.StatoOrdineMaxAggregateOutputType? $max; +} + +class StatoOrdineCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOrdineCountOrderByAggregateInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOrdineAvgOrderByAggregateInput({this.ordine}); + + final _i2.SortOrder? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOrdineMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOrdineMaxOrderByAggregateInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOrdineMinOrderByAggregateInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOrdineSumOrderByAggregateInput({this.ordine}); + + final _i2.SortOrder? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOrdineOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const StatoOrdineOrderByWithAggregationInput({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + final _i2.StatoOrdineCountOrderByAggregateInput? $count; + + final _i2.StatoOrdineAvgOrderByAggregateInput? $avg; + + final _i2.StatoOrdineMaxOrderByAggregateInput? $max; + + final _i2.StatoOrdineMinOrderByAggregateInput? $min; + + final _i2.StatoOrdineSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedEnumTipoStatoWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoStatoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoStato, _i1.Reference<_i3.TipoStato>>? equals; + + final Iterable<_i3.TipoStato>? $in; + + final Iterable<_i3.TipoStato>? notIn; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.NestedEnumTipoStatoWithAggregatesFilter>? + not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoStatoFilter? $min; + + final _i2.NestedEnumTipoStatoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTipoStatoWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTipoStatoWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoStato, _i1.Reference<_i3.TipoStato>>? equals; + + final Iterable<_i3.TipoStato>? $in; + + final Iterable<_i3.TipoStato>? notIn; + + final _i1 + .PrismaUnion<_i3.TipoStato, _i2.NestedEnumTipoStatoWithAggregatesFilter>? + not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumTipoStatoFilter? $min; + + final _i2.NestedEnumTipoStatoFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class StatoOrdineScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const StatoOrdineScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final _i1.PrismaUnion<_i2.StatoOrdineScalarWhereWithAggregatesInput, + Iterable<_i2.StatoOrdineScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.StatoOrdineScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOrdineScalarWhereWithAggregatesInput, + Iterable<_i2.StatoOrdineScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoWithAggregatesFilter, _i3.TipoStato>? + tipoStato; + + final _i1.PrismaUnion<_i2.IntWithAggregatesFilter, int>? ordine; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? colore; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + '_all': $all, + }; +} + +class StatoOrdineGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeCountArgs({this.select}); + + final _i2.StatoOrdineCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineAvgAggregateOutputTypeSelect({this.ordine}); + + final bool? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOrdineGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeAvgArgs({this.select}); + + final _i2.StatoOrdineAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineSumAggregateOutputTypeSelect({this.ordine}); + + final bool? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOrdineGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeSumArgs({this.select}); + + final _i2.StatoOrdineSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineMinAggregateOutputTypeSelect({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final bool? id; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeMinArgs({this.select}); + + final _i2.StatoOrdineMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + }); + + final bool? id; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + }; +} + +class StatoOrdineGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeMaxArgs({this.select}); + + final _i2.StatoOrdineMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOrdineGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOrdineGroupByOutputTypeSelect({ + this.id, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateStatoOrdine { + const AggregateStatoOrdine({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateStatoOrdine.fromJson(Map json) => AggregateStatoOrdine( + $count: json['_count'] is Map + ? _i2.StatoOrdineCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.StatoOrdineAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.StatoOrdineSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.StatoOrdineMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoOrdineMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.StatoOrdineCountAggregateOutputType? $count; + + final _i2.StatoOrdineAvgAggregateOutputType? $avg; + + final _i2.StatoOrdineSumAggregateOutputType? $sum; + + final _i2.StatoOrdineMinAggregateOutputType? $min; + + final _i2.StatoOrdineMaxAggregateOutputType? $max; +} + +class AggregateStatoOrdineCountArgs + implements _i1.JsonConvertible> { + const AggregateStatoOrdineCountArgs({this.select}); + + final _i2.StatoOrdineCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOrdineAvgArgs + implements _i1.JsonConvertible> { + const AggregateStatoOrdineAvgArgs({this.select}); + + final _i2.StatoOrdineAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOrdineSumArgs + implements _i1.JsonConvertible> { + const AggregateStatoOrdineSumArgs({this.select}); + + final _i2.StatoOrdineSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOrdineMinArgs + implements _i1.JsonConvertible> { + const AggregateStatoOrdineMinArgs({this.select}); + + final _i2.StatoOrdineMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOrdineMaxArgs + implements _i1.JsonConvertible> { + const AggregateStatoOrdineMaxArgs({this.select}); + + final _i2.StatoOrdineMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOrdineSelect + implements _i1.JsonConvertible> { + const AggregateStatoOrdineSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class ProdottoCreateInput implements _i1.JsonConvertible> { + const ProdottoCreateInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttore, + this.prodottiOrdinati, + required this.fornitore, + required this.tipoProdotto, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final _i2.ProduttoreCreateNestedOneWithoutProdottiInput produttore; + + final _i2.OrdineCreateNestedManyWithoutProdottiInput? prodottiOrdinati; + + final _i2.FornitoreCreateNestedOneWithoutProdottiInput fornitore; + + final _i2.TipoProdottoCreateNestedOneWithoutProdottiInput tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoUncheckedCreateInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.fornitoreId, + required this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String fornitoreId; + + final String tipoProdottoId; + + final _i2.OrdineUncheckedCreateNestedManyWithoutProdottiInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoCreateManyInput + implements _i1.JsonConvertible> { + const ProdottoCreateManyInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.fornitoreId, + required this.tipoProdottoId, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String fornitoreId; + + final String tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateInput implements _i1.JsonConvertible> { + const ProdottoUpdateInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i2.ProduttoreUpdateOneRequiredWithoutProdottiNestedInput? produttore; + + final _i2.OrdineUpdateManyWithoutProdottiNestedInput? prodottiOrdinati; + + final _i2.FornitoreUpdateOneRequiredWithoutProdottiNestedInput? fornitore; + + final _i2.TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput? + tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + final _i2.OrdineUncheckedUpdateManyWithoutProdottiNestedInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoCountAggregateOutputType { + const ProdottoCountAggregateOutputType({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.$all, + }); + + factory ProdottoCountAggregateOutputType.fromJson(Map json) => + ProdottoCountAggregateOutputType( + uuid: json['uuid'], + modello: json['modello'], + prezzo: json['prezzo'], + vendibileDal: json['vendibileDal'], + vendibileAl: json['vendibileAl'], + produttoreId: json['produttoreId'], + fornitoreId: json['fornitoreId'], + tipoProdottoId: json['tipoProdottoId'], + $all: json['_all'], + ); + + final int? uuid; + + final int? modello; + + final int? prezzo; + + final int? vendibileDal; + + final int? vendibileAl; + + final int? produttoreId; + + final int? fornitoreId; + + final int? tipoProdottoId; + + final int? $all; +} + +class ProdottoAvgAggregateOutputType { + const ProdottoAvgAggregateOutputType({this.prezzo}); + + factory ProdottoAvgAggregateOutputType.fromJson(Map json) => + ProdottoAvgAggregateOutputType(prezzo: json['prezzo']); + + final double? prezzo; +} + +class ProdottoSumAggregateOutputType { + const ProdottoSumAggregateOutputType({this.prezzo}); + + factory ProdottoSumAggregateOutputType.fromJson(Map json) => + ProdottoSumAggregateOutputType(prezzo: json['prezzo']); + + final double? prezzo; +} + +class ProdottoMinAggregateOutputType { + const ProdottoMinAggregateOutputType({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + factory ProdottoMinAggregateOutputType.fromJson(Map json) => + ProdottoMinAggregateOutputType( + uuid: json['uuid'], + modello: json['modello'], + prezzo: json['prezzo'], + vendibileDal: json['vendibileDal'], + vendibileAl: json['vendibileAl'], + produttoreId: json['produttoreId'], + fornitoreId: json['fornitoreId'], + tipoProdottoId: json['tipoProdottoId'], + ); + + final String? uuid; + + final String? modello; + + final double? prezzo; + + final DateTime? vendibileDal; + + final DateTime? vendibileAl; + + final String? produttoreId; + + final String? fornitoreId; + + final String? tipoProdottoId; +} + +class ProdottoMaxAggregateOutputType { + const ProdottoMaxAggregateOutputType({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + factory ProdottoMaxAggregateOutputType.fromJson(Map json) => + ProdottoMaxAggregateOutputType( + uuid: json['uuid'], + modello: json['modello'], + prezzo: json['prezzo'], + vendibileDal: json['vendibileDal'], + vendibileAl: json['vendibileAl'], + produttoreId: json['produttoreId'], + fornitoreId: json['fornitoreId'], + tipoProdottoId: json['tipoProdottoId'], + ); + + final String? uuid; + + final String? modello; + + final double? prezzo; + + final DateTime? vendibileDal; + + final DateTime? vendibileAl; + + final String? produttoreId; + + final String? fornitoreId; + + final String? tipoProdottoId; +} + +class ProdottoGroupByOutputType { + const ProdottoGroupByOutputType({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory ProdottoGroupByOutputType.fromJson(Map json) => + ProdottoGroupByOutputType( + uuid: json['uuid'], + modello: json['modello'], + prezzo: json['prezzo'], + vendibileDal: json['vendibileDal'], + vendibileAl: json['vendibileAl'], + produttoreId: json['produttoreId'], + fornitoreId: json['fornitoreId'], + tipoProdottoId: json['tipoProdottoId'], + $count: json['_count'] is Map + ? _i2.ProdottoCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ProdottoAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ProdottoSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ProdottoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ProdottoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? modello; + + final double? prezzo; + + final DateTime? vendibileDal; + + final DateTime? vendibileAl; + + final String? produttoreId; + + final String? fornitoreId; + + final String? tipoProdottoId; + + final _i2.ProdottoCountAggregateOutputType? $count; + + final _i2.ProdottoAvgAggregateOutputType? $avg; + + final _i2.ProdottoSumAggregateOutputType? $sum; + + final _i2.ProdottoMinAggregateOutputType? $min; + + final _i2.ProdottoMaxAggregateOutputType? $max; +} + +class ProdottoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProdottoCountOrderByAggregateInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? modello; + + final _i2.SortOrder? prezzo; + + final _i2.SortOrder? vendibileDal; + + final _i2.SortOrder? vendibileAl; + + final _i2.SortOrder? produttoreId; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProdottoAvgOrderByAggregateInput({this.prezzo}); + + final _i2.SortOrder? prezzo; + + @override + Map toJson() => {'prezzo': prezzo}; +} + +class ProdottoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProdottoMaxOrderByAggregateInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? modello; + + final _i2.SortOrder? prezzo; + + final _i2.SortOrder? vendibileDal; + + final _i2.SortOrder? vendibileAl; + + final _i2.SortOrder? produttoreId; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProdottoMinOrderByAggregateInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? modello; + + final _i2.SortOrder? prezzo; + + final _i2.SortOrder? vendibileDal; + + final _i2.SortOrder? vendibileAl; + + final _i2.SortOrder? produttoreId; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProdottoSumOrderByAggregateInput({this.prezzo}); + + final _i2.SortOrder? prezzo; + + @override + Map toJson() => {'prezzo': prezzo}; +} + +class ProdottoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ProdottoOrderByWithAggregationInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? modello; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? prezzo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? vendibileDal; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? vendibileAl; + + final _i2.SortOrder? produttoreId; + + final _i2.SortOrder? fornitoreId; + + final _i2.SortOrder? tipoProdottoId; + + final _i2.ProdottoCountOrderByAggregateInput? $count; + + final _i2.ProdottoAvgOrderByAggregateInput? $avg; + + final _i2.ProdottoMaxOrderByAggregateInput? $max; + + final _i2.ProdottoMinOrderByAggregateInput? $min; + + final _i2.ProdottoSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class ProdottoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ProdottoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereWithAggregatesInput, + Iterable<_i2.ProdottoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ProdottoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereWithAggregatesInput, + Iterable<_i2.ProdottoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? modello; + + final _i1.PrismaUnion<_i2.FloatNullableWithAggregatesFilter, + _i1.PrismaUnion>? prezzo; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? vendibileDal; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? vendibileAl; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? produttoreId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? fornitoreId; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? tipoProdottoId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoCountAggregateOutputTypeSelect({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.$all, + }); + + final bool? uuid; + + final bool? modello; + + final bool? prezzo; + + final bool? vendibileDal; + + final bool? vendibileAl; + + final bool? produttoreId; + + final bool? fornitoreId; + + final bool? tipoProdottoId; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + '_all': $all, + }; +} + +class ProdottoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeCountArgs({this.select}); + + final _i2.ProdottoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoAvgAggregateOutputTypeSelect({this.prezzo}); + + final bool? prezzo; + + @override + Map toJson() => {'prezzo': prezzo}; +} + +class ProdottoGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeAvgArgs({this.select}); + + final _i2.ProdottoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoSumAggregateOutputTypeSelect({this.prezzo}); + + final bool? prezzo; + + @override + Map toJson() => {'prezzo': prezzo}; +} + +class ProdottoGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeSumArgs({this.select}); + + final _i2.ProdottoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoMinAggregateOutputTypeSelect({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final bool? uuid; + + final bool? modello; + + final bool? prezzo; + + final bool? vendibileDal; + + final bool? vendibileAl; + + final bool? produttoreId; + + final bool? fornitoreId; + + final bool? tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeMinArgs({this.select}); + + final _i2.ProdottoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoMaxAggregateOutputTypeSelect({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + }); + + final bool? uuid; + + final bool? modello; + + final bool? prezzo; + + final bool? vendibileDal; + + final bool? vendibileAl; + + final bool? produttoreId; + + final bool? fornitoreId; + + final bool? tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ProdottoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProdottoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ProdottoGroupByOutputTypeSelect({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.tipoProdottoId, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? modello; + + final bool? prezzo; + + final bool? vendibileDal; + + final bool? vendibileAl; + + final bool? produttoreId; + + final bool? fornitoreId; + + final bool? tipoProdottoId; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateProdotto { + const AggregateProdotto({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateProdotto.fromJson(Map json) => AggregateProdotto( + $count: json['_count'] is Map + ? _i2.ProdottoCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.ProdottoAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.ProdottoSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.ProdottoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ProdottoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ProdottoCountAggregateOutputType? $count; + + final _i2.ProdottoAvgAggregateOutputType? $avg; + + final _i2.ProdottoSumAggregateOutputType? $sum; + + final _i2.ProdottoMinAggregateOutputType? $min; + + final _i2.ProdottoMaxAggregateOutputType? $max; +} + +class AggregateProdottoCountArgs + implements _i1.JsonConvertible> { + const AggregateProdottoCountArgs({this.select}); + + final _i2.ProdottoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProdottoAvgArgs + implements _i1.JsonConvertible> { + const AggregateProdottoAvgArgs({this.select}); + + final _i2.ProdottoAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProdottoSumArgs + implements _i1.JsonConvertible> { + const AggregateProdottoSumArgs({this.select}); + + final _i2.ProdottoSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProdottoMinArgs + implements _i1.JsonConvertible> { + const AggregateProdottoMinArgs({this.select}); + + final _i2.ProdottoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProdottoMaxArgs + implements _i1.JsonConvertible> { + const AggregateProdottoMaxArgs({this.select}); + + final _i2.ProdottoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProdottoSelect + implements _i1.JsonConvertible> { + const AggregateProdottoSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +enum TipoProdottoScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'TipoProdotto'), + nome('nome', 'TipoProdotto'); + + const TipoProdottoScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ProdottoCreateWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoCreateWithoutTipoProdottoInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttore, + this.prodottiOrdinati, + required this.fornitore, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final _i2.ProduttoreCreateNestedOneWithoutProdottiInput produttore; + + final _i2.OrdineCreateNestedManyWithoutProdottiInput? prodottiOrdinati; + + final _i2.FornitoreCreateNestedOneWithoutProdottiInput fornitore; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + }; +} + +class ProdottoUncheckedCreateWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateWithoutTipoProdottoInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.fornitoreId, + this.prodottiOrdinati, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String fornitoreId; + + final _i2.OrdineUncheckedCreateNestedManyWithoutProdottiInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoCreateOrConnectWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoCreateOrConnectWithoutTipoProdottoInput({ + required this.where, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutTipoProdottoInput, + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ProdottoCreateManyTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoCreateManyTipoProdottoInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.produttoreId, + required this.fornitoreId, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String produttoreId; + + final String fornitoreId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + }; +} + +class ProdottoCreateManyTipoProdottoInputEnvelope + implements _i1.JsonConvertible> { + const ProdottoCreateManyTipoProdottoInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ProdottoCreateManyTipoProdottoInput, + Iterable<_i2.ProdottoCreateManyTipoProdottoInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ProdottoCreateNestedManyWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoCreateNestedManyWithoutTipoProdottoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutTipoProdottoInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutTipoProdottoInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyTipoProdottoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoProdottoCreateInput + implements _i1.JsonConvertible> { + const TipoProdottoCreateInput({ + required this.id, + required this.nome, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ProdottoCreateNestedManyWithoutTipoProdottoInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProdottoUncheckedCreateNestedManyWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateNestedManyWithoutTipoProdottoInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutTipoProdottoInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutTipoProdottoInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyTipoProdottoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class TipoProdottoUncheckedCreateInput + implements _i1.JsonConvertible> { + const TipoProdottoUncheckedCreateInput({ + required this.id, + required this.nome, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutTipoProdottoInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class TipoProdottoCreateManyInput + implements _i1.JsonConvertible> { + const TipoProdottoCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProdottoUpdateWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithoutTipoProdottoInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttore, + this.prodottiOrdinati, + this.fornitore, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i2.ProduttoreUpdateOneRequiredWithoutProdottiNestedInput? produttore; + + final _i2.OrdineUpdateManyWithoutProdottiNestedInput? prodottiOrdinati; + + final _i2.FornitoreUpdateOneRequiredWithoutProdottiNestedInput? fornitore; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttore': produttore, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + }; +} + +class ProdottoUncheckedUpdateWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateWithoutTipoProdottoInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + final _i2.OrdineUncheckedUpdateManyWithoutProdottiNestedInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutTipoProdottoInput, + _i2.ProdottoUncheckedUpdateWithoutTipoProdottoInput> update; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutTipoProdottoInput, + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutTipoProdottoInput, + _i2.ProdottoUncheckedUpdateWithoutTipoProdottoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUncheckedUpdateManyWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutTipoProdottoInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.produttoreId, + this.fornitoreId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + produttoreId; + + final _i1.PrismaUnion? + fornitoreId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'produttoreId': produttoreId, + 'fornitoreId': fornitoreId, + }; +} + +class ProdottoUpdateManyWithWhereWithoutTipoProdottoInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithWhereWithoutTipoProdottoInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyMutationInput, + _i2.ProdottoUncheckedUpdateManyWithoutTipoProdottoInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUpdateManyWithoutTipoProdottoNestedInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithoutTipoProdottoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutTipoProdottoInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutTipoProdottoInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput>>? + upsert; + + final _i2.ProdottoCreateManyTipoProdottoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput>>? + update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutTipoProdottoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoProdottoUpdateInput + implements _i1.JsonConvertible> { + const TipoProdottoUpdateInput({ + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ProdottoUpdateManyWithoutTipoProdottoNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProdottoUncheckedUpdateManyWithoutTipoProdottoNestedInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutTipoProdottoNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutTipoProdottoInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutTipoProdottoInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutTipoProdottoInput>>>>? + create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutTipoProdottoInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutTipoProdottoInput>>? + upsert; + + final _i2.ProdottoCreateManyTipoProdottoInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutTipoProdottoInput>>? + update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutTipoProdottoInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutTipoProdottoInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class TipoProdottoUncheckedUpdateInput + implements _i1.JsonConvertible> { + const TipoProdottoUncheckedUpdateInput({ + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ProdottoUncheckedUpdateManyWithoutTipoProdottoNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class TipoProdottoUpdateManyMutationInput + implements _i1.JsonConvertible> { + const TipoProdottoUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const TipoProdottoUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoCountAggregateOutputType { + const TipoProdottoCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory TipoProdottoCountAggregateOutputType.fromJson(Map json) => + TipoProdottoCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class TipoProdottoMinAggregateOutputType { + const TipoProdottoMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory TipoProdottoMinAggregateOutputType.fromJson(Map json) => + TipoProdottoMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class TipoProdottoMaxAggregateOutputType { + const TipoProdottoMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory TipoProdottoMaxAggregateOutputType.fromJson(Map json) => + TipoProdottoMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class TipoProdottoGroupByOutputType { + const TipoProdottoGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory TipoProdottoGroupByOutputType.fromJson(Map json) => + TipoProdottoGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.TipoProdottoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.TipoProdottoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoProdottoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.TipoProdottoCountAggregateOutputType? $count; + + final _i2.TipoProdottoMinAggregateOutputType? $min; + + final _i2.TipoProdottoMaxAggregateOutputType? $max; +} + +class TipoProdottoCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoProdottoCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoProdottoMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const TipoProdottoMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const TipoProdottoOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.TipoProdottoCountOrderByAggregateInput? $count; + + final _i2.TipoProdottoMaxOrderByAggregateInput? $max; + + final _i2.TipoProdottoMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class TipoProdottoScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const TipoProdottoScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.TipoProdottoScalarWhereWithAggregatesInput, + Iterable<_i2.TipoProdottoScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.TipoProdottoScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.TipoProdottoScalarWhereWithAggregatesInput, + Iterable<_i2.TipoProdottoScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoProdottoCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class TipoProdottoGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const TipoProdottoGroupByOutputTypeCountArgs({this.select}); + + final _i2.TipoProdottoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoProdottoMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoProdottoMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const TipoProdottoGroupByOutputTypeMinArgs({this.select}); + + final _i2.TipoProdottoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoProdottoMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoProdottoMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class TipoProdottoGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const TipoProdottoGroupByOutputTypeMaxArgs({this.select}); + + final _i2.TipoProdottoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class TipoProdottoGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const TipoProdottoGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateTipoProdotto { + const AggregateTipoProdotto({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateTipoProdotto.fromJson(Map json) => AggregateTipoProdotto( + $count: json['_count'] is Map + ? _i2.TipoProdottoCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.TipoProdottoMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.TipoProdottoMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.TipoProdottoCountAggregateOutputType? $count; + + final _i2.TipoProdottoMinAggregateOutputType? $min; + + final _i2.TipoProdottoMaxAggregateOutputType? $max; +} + +class AggregateTipoProdottoCountArgs + implements _i1.JsonConvertible> { + const AggregateTipoProdottoCountArgs({this.select}); + + final _i2.TipoProdottoCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoProdottoMinArgs + implements _i1.JsonConvertible> { + const AggregateTipoProdottoMinArgs({this.select}); + + final _i2.TipoProdottoMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoProdottoMaxArgs + implements _i1.JsonConvertible> { + const AggregateTipoProdottoMaxArgs({this.select}); + + final _i2.TipoProdottoMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateTipoProdottoSelect + implements _i1.JsonConvertible> { + const AggregateTipoProdottoSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum ProduttoreScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'Produttore'), + nome('nome', 'Produttore'); + + const ProduttoreScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class ProdottoCreateWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateWithoutProduttoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.prodottiOrdinati, + required this.fornitore, + required this.tipoProdotto, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final _i2.OrdineCreateNestedManyWithoutProdottiInput? prodottiOrdinati; + + final _i2.FornitoreCreateNestedOneWithoutProdottiInput fornitore; + + final _i2.TipoProdottoCreateNestedOneWithoutProdottiInput tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoUncheckedCreateWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateWithoutProduttoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.fornitoreId, + required this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String fornitoreId; + + final String tipoProdottoId; + + final _i2.OrdineUncheckedCreateNestedManyWithoutProdottiInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoCreateOrConnectWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateOrConnectWithoutProduttoreInput({ + required this.where, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutProduttoreInput, + _i2.ProdottoUncheckedCreateWithoutProduttoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class ProdottoCreateManyProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateManyProduttoreInput({ + this.uuid, + required this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + required this.fornitoreId, + required this.tipoProdottoId, + }); + + final String? uuid; + + final String modello; + + final _i1.PrismaUnion? prezzo; + + final _i1.PrismaUnion? vendibileDal; + + final _i1.PrismaUnion? vendibileAl; + + final String fornitoreId; + + final String tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoCreateManyProduttoreInputEnvelope + implements _i1.JsonConvertible> { + const ProdottoCreateManyProduttoreInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.ProdottoCreateManyProduttoreInput, + Iterable<_i2.ProdottoCreateManyProduttoreInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class ProdottoCreateNestedManyWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoCreateNestedManyWithoutProduttoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProduttoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProduttoreInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput>>>>? create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProduttoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProduttoreInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyProduttoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ProduttoreCreateInput + implements _i1.JsonConvertible> { + const ProduttoreCreateInput({ + required this.id, + required this.nome, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ProdottoCreateNestedManyWithoutProduttoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProdottoUncheckedCreateNestedManyWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedCreateNestedManyWithoutProduttoreInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProduttoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProduttoreInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput>>>>? create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProduttoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProduttoreInput>>? + connectOrCreate; + + final _i2.ProdottoCreateManyProduttoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ProduttoreUncheckedCreateInput + implements _i1.JsonConvertible> { + const ProduttoreUncheckedCreateInput({ + required this.id, + required this.nome, + this.prodotti, + }); + + final String id; + + final String nome; + + final _i2.ProdottoUncheckedCreateNestedManyWithoutProduttoreInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProduttoreCreateManyInput + implements _i1.JsonConvertible> { + const ProduttoreCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProdottoUpdateWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithoutProduttoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.prodottiOrdinati, + this.fornitore, + this.tipoProdotto, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i2.OrdineUpdateManyWithoutProdottiNestedInput? prodottiOrdinati; + + final _i2.FornitoreUpdateOneRequiredWithoutProdottiNestedInput? fornitore; + + final _i2.TipoProdottoUpdateOneRequiredWithoutProdottiNestedInput? + tipoProdotto; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'prodottiOrdinati': prodottiOrdinati, + 'fornitore': fornitore, + 'tipoProdotto': tipoProdotto, + }; +} + +class ProdottoUncheckedUpdateWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateWithoutProduttoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.fornitoreId, + this.tipoProdottoId, + this.prodottiOrdinati, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + final _i2.OrdineUncheckedUpdateManyWithoutProdottiNestedInput? + prodottiOrdinati; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + 'prodottiOrdinati': prodottiOrdinati, + }; +} + +class ProdottoUpsertWithWhereUniqueWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUpsertWithWhereUniqueWithoutProduttoreInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutProduttoreInput, + _i2.ProdottoUncheckedUpdateWithoutProduttoreInput> update; + + final _i1.PrismaUnion<_i2.ProdottoCreateWithoutProduttoreInput, + _i2.ProdottoUncheckedCreateWithoutProduttoreInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class ProdottoUpdateWithWhereUniqueWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateWithWhereUniqueWithoutProduttoreInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithoutProduttoreInput, + _i2.ProdottoUncheckedUpdateWithoutProduttoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUncheckedUpdateManyWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutProduttoreInput({ + this.uuid, + this.modello, + this.prezzo, + this.vendibileDal, + this.vendibileAl, + this.fornitoreId, + this.tipoProdottoId, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? modello; + + final _i1.PrismaUnion< + double, + _i1.PrismaUnion<_i2.NullableFloatFieldUpdateOperationsInput, + _i1.PrismaNull>>? prezzo; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileDal; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? vendibileAl; + + final _i1.PrismaUnion? + fornitoreId; + + final _i1.PrismaUnion? + tipoProdottoId; + + @override + Map toJson() => { + 'uuid': uuid, + 'modello': modello, + 'prezzo': prezzo, + 'vendibileDal': vendibileDal, + 'vendibileAl': vendibileAl, + 'fornitoreId': fornitoreId, + 'tipoProdottoId': tipoProdottoId, + }; +} + +class ProdottoUpdateManyWithWhereWithoutProduttoreInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithWhereWithoutProduttoreInput({ + required this.where, + required this.data, + }); + + final _i2.ProdottoScalarWhereInput where; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyMutationInput, + _i2.ProdottoUncheckedUpdateManyWithoutProduttoreInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class ProdottoUpdateManyWithoutProduttoreNestedInput + implements _i1.JsonConvertible> { + const ProdottoUpdateManyWithoutProduttoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProduttoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProduttoreInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput>>>>? create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProduttoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProduttoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoUpsertWithWhereUniqueWithoutProduttoreInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutProduttoreInput>>? + upsert; + + final _i2.ProdottoCreateManyProduttoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithWhereUniqueWithoutProduttoreInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutProduttoreInput>>? + update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutProduttoreInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutProduttoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ProduttoreUpdateInput + implements _i1.JsonConvertible> { + const ProduttoreUpdateInput({ + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ProdottoUpdateManyWithoutProduttoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProdottoUncheckedUpdateManyWithoutProduttoreNestedInput + implements _i1.JsonConvertible> { + const ProdottoUncheckedUpdateManyWithoutProduttoreNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.ProdottoCreateWithoutProduttoreInput, + _i1.PrismaUnion< + Iterable<_i2.ProdottoCreateWithoutProduttoreInput>, + _i1.PrismaUnion< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput, + Iterable< + _i2.ProdottoUncheckedCreateWithoutProduttoreInput>>>>? create; + + final _i1.PrismaUnion<_i2.ProdottoCreateOrConnectWithoutProduttoreInput, + Iterable<_i2.ProdottoCreateOrConnectWithoutProduttoreInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.ProdottoUpsertWithWhereUniqueWithoutProduttoreInput, + Iterable<_i2.ProdottoUpsertWithWhereUniqueWithoutProduttoreInput>>? + upsert; + + final _i2.ProdottoCreateManyProduttoreInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.ProdottoWhereUniqueInput, + Iterable<_i2.ProdottoWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.ProdottoUpdateWithWhereUniqueWithoutProduttoreInput, + Iterable<_i2.ProdottoUpdateWithWhereUniqueWithoutProduttoreInput>>? + update; + + final _i1.PrismaUnion<_i2.ProdottoUpdateManyWithWhereWithoutProduttoreInput, + Iterable<_i2.ProdottoUpdateManyWithWhereWithoutProduttoreInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.ProdottoScalarWhereInput, + Iterable<_i2.ProdottoScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ProduttoreUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ProduttoreUncheckedUpdateInput({ + this.id, + this.nome, + this.prodotti, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.ProdottoUncheckedUpdateManyWithoutProduttoreNestedInput? prodotti; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'prodotti': prodotti, + }; +} + +class ProduttoreUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ProduttoreUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ProduttoreUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreCountAggregateOutputType { + const ProduttoreCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory ProduttoreCountAggregateOutputType.fromJson(Map json) => + ProduttoreCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class ProduttoreMinAggregateOutputType { + const ProduttoreMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory ProduttoreMinAggregateOutputType.fromJson(Map json) => + ProduttoreMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class ProduttoreMaxAggregateOutputType { + const ProduttoreMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory ProduttoreMaxAggregateOutputType.fromJson(Map json) => + ProduttoreMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class ProduttoreGroupByOutputType { + const ProduttoreGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory ProduttoreGroupByOutputType.fromJson(Map json) => + ProduttoreGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.ProduttoreCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ProduttoreMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ProduttoreMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.ProduttoreCountAggregateOutputType? $count; + + final _i2.ProduttoreMinAggregateOutputType? $min; + + final _i2.ProduttoreMaxAggregateOutputType? $max; +} + +class ProduttoreCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProduttoreCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProduttoreMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ProduttoreMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ProduttoreOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ProduttoreCountOrderByAggregateInput? $count; + + final _i2.ProduttoreMaxOrderByAggregateInput? $max; + + final _i2.ProduttoreMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ProduttoreScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ProduttoreScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.ProduttoreScalarWhereWithAggregatesInput, + Iterable<_i2.ProduttoreScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ProduttoreScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ProduttoreScalarWhereWithAggregatesInput, + Iterable<_i2.ProduttoreScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProduttoreCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class ProduttoreGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ProduttoreGroupByOutputTypeCountArgs({this.select}); + + final _i2.ProduttoreCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProduttoreMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProduttoreMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ProduttoreGroupByOutputTypeMinArgs({this.select}); + + final _i2.ProduttoreMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProduttoreMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ProduttoreMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ProduttoreGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ProduttoreGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ProduttoreMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ProduttoreGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ProduttoreGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateProduttore { + const AggregateProduttore({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateProduttore.fromJson(Map json) => AggregateProduttore( + $count: json['_count'] is Map + ? _i2.ProduttoreCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ProduttoreMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ProduttoreMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ProduttoreCountAggregateOutputType? $count; + + final _i2.ProduttoreMinAggregateOutputType? $min; + + final _i2.ProduttoreMaxAggregateOutputType? $max; +} + +class AggregateProduttoreCountArgs + implements _i1.JsonConvertible> { + const AggregateProduttoreCountArgs({this.select}); + + final _i2.ProduttoreCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProduttoreMinArgs + implements _i1.JsonConvertible> { + const AggregateProduttoreMinArgs({this.select}); + + final _i2.ProduttoreMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProduttoreMaxArgs + implements _i1.JsonConvertible> { + const AggregateProduttoreMaxArgs({this.select}); + + final _i2.ProduttoreMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateProduttoreSelect + implements _i1.JsonConvertible> { + const AggregateProduttoreSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class UtenteCreateInput implements _i1.JsonConvertible> { + const UtenteCreateInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + required this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final String nomeVisualizzato; + + final _i2.NegozioCreateNestedOneWithoutUtentiInput? negozio; + + final _i2.ContrattoCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaCreateNestedManyWithoutAgentiInput? opportunitaAssegnate; + + final _i2.OrdineCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedCreateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedCreateInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutUtenteInput? contratti; + + final _i2.PraticaUncheckedCreateNestedManyWithoutUtenteInput? pratiche; + + final _i2.IngressiUncheckedCreateNestedManyWithoutUtenteInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutUtenteInput? leadsGestiti; + + final _i2.LeadUncheckedCreateNestedManyWithoutAgenteInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutGestoriLeadInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedCreateNestedManyWithoutAgentiInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedCreateNestedManyWithoutUtenteInput? ordini; + + final _i2.HistoryUncheckedCreateNestedManyWithoutUtenteInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteCreateManyInput + implements _i1.JsonConvertible> { + const UtenteCreateManyInput({ + this.uuid, + this.firebaseUid, + required this.email, + required this.ruolo, + this.photoUrl, + this.negozioCodice, + required this.nomeVisualizzato, + }); + + final String? uuid; + + final _i1.PrismaUnion? firebaseUid; + + final String email; + + final _i3.RuoloUtente ruolo; + + final _i1.PrismaUnion? photoUrl; + + final _i1.PrismaUnion? negozioCodice; + + final String nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteUpdateInput implements _i1.JsonConvertible> { + const UtenteUpdateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.nomeVisualizzato, + this.negozio, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.NegozioUpdateOneWithoutUtentiNestedInput? negozio; + + final _i2.ContrattoUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUpdateManyWithoutAgentiNestedInput? opportunitaAssegnate; + + final _i2.OrdineUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'nomeVisualizzato': nomeVisualizzato, + 'negozio': negozio, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.contratti, + this.pratiche, + this.ingressi, + this.leadsGestiti, + this.leadsAssegnati, + this.opportunitaGestite, + this.opportunitaAssegnate, + this.ordini, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + final _i2.ContrattoUncheckedUpdateManyWithoutUtenteNestedInput? contratti; + + final _i2.PraticaUncheckedUpdateManyWithoutUtenteNestedInput? pratiche; + + final _i2.IngressiUncheckedUpdateManyWithoutUtenteNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutUtenteNestedInput? leadsGestiti; + + final _i2.LeadUncheckedUpdateManyWithoutAgenteNestedInput? leadsAssegnati; + + final _i2.OpportunitaUncheckedUpdateManyWithoutGestoriLeadNestedInput? + opportunitaGestite; + + final _i2.OpportunitaUncheckedUpdateManyWithoutAgentiNestedInput? + opportunitaAssegnate; + + final _i2.OrdineUncheckedUpdateManyWithoutUtenteNestedInput? ordini; + + final _i2.HistoryUncheckedUpdateManyWithoutUtenteNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + 'contratti': contratti, + 'pratiche': pratiche, + 'ingressi': ingressi, + 'leadsGestiti': leadsGestiti, + 'leadsAssegnati': leadsAssegnati, + 'opportunitaGestite': opportunitaGestite, + 'opportunitaAssegnate': opportunitaAssegnate, + 'ordini': ordini, + 'history': history, + }; +} + +class UtenteUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const UtenteUncheckedUpdateManyInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? firebaseUid; + + final _i1.PrismaUnion? email; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.EnumRuoloUtenteFieldUpdateOperationsInput>? ruolo; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? photoUrl; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion? + nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteCountAggregateOutputType { + const UtenteCountAggregateOutputType({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.$all, + }); + + factory UtenteCountAggregateOutputType.fromJson(Map json) => + UtenteCountAggregateOutputType( + uuid: json['uuid'], + firebaseUid: json['firebaseUid'], + email: json['email'], + ruolo: json['ruolo'], + photoUrl: json['photoUrl'], + negozioCodice: json['negozioCodice'], + nomeVisualizzato: json['nomeVisualizzato'], + $all: json['_all'], + ); + + final int? uuid; + + final int? firebaseUid; + + final int? email; + + final int? ruolo; + + final int? photoUrl; + + final int? negozioCodice; + + final int? nomeVisualizzato; + + final int? $all; +} + +class UtenteMinAggregateOutputType { + const UtenteMinAggregateOutputType({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + factory UtenteMinAggregateOutputType.fromJson(Map json) => + UtenteMinAggregateOutputType( + uuid: json['uuid'], + firebaseUid: json['firebaseUid'], + email: json['email'], + ruolo: json['ruolo'] != null + ? _i3.RuoloUtente.values.firstWhere((e) => e.name == json['ruolo']) + : null, + photoUrl: json['photoUrl'], + negozioCodice: json['negozioCodice'], + nomeVisualizzato: json['nomeVisualizzato'], + ); + + final String? uuid; + + final String? firebaseUid; + + final String? email; + + final _i3.RuoloUtente? ruolo; + + final String? photoUrl; + + final String? negozioCodice; + + final String? nomeVisualizzato; +} + +class UtenteMaxAggregateOutputType { + const UtenteMaxAggregateOutputType({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + factory UtenteMaxAggregateOutputType.fromJson(Map json) => + UtenteMaxAggregateOutputType( + uuid: json['uuid'], + firebaseUid: json['firebaseUid'], + email: json['email'], + ruolo: json['ruolo'] != null + ? _i3.RuoloUtente.values.firstWhere((e) => e.name == json['ruolo']) + : null, + photoUrl: json['photoUrl'], + negozioCodice: json['negozioCodice'], + nomeVisualizzato: json['nomeVisualizzato'], + ); + + final String? uuid; + + final String? firebaseUid; + + final String? email; + + final _i3.RuoloUtente? ruolo; + + final String? photoUrl; + + final String? negozioCodice; + + final String? nomeVisualizzato; +} + +class UtenteGroupByOutputType { + const UtenteGroupByOutputType({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.$count, + this.$min, + this.$max, + }); + + factory UtenteGroupByOutputType.fromJson(Map json) => UtenteGroupByOutputType( + uuid: json['uuid'], + firebaseUid: json['firebaseUid'], + email: json['email'], + ruolo: json['ruolo'] != null + ? _i3.RuoloUtente.values.firstWhere((e) => e.name == json['ruolo']) + : null, + photoUrl: json['photoUrl'], + negozioCodice: json['negozioCodice'], + nomeVisualizzato: json['nomeVisualizzato'], + $count: json['_count'] is Map + ? _i2.UtenteCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.UtenteMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.UtenteMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? firebaseUid; + + final String? email; + + final _i3.RuoloUtente? ruolo; + + final String? photoUrl; + + final String? negozioCodice; + + final String? nomeVisualizzato; + + final _i2.UtenteCountAggregateOutputType? $count; + + final _i2.UtenteMinAggregateOutputType? $min; + + final _i2.UtenteMaxAggregateOutputType? $max; +} + +class UtenteCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const UtenteCountOrderByAggregateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? firebaseUid; + + final _i2.SortOrder? email; + + final _i2.SortOrder? ruolo; + + final _i2.SortOrder? photoUrl; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const UtenteMaxOrderByAggregateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? firebaseUid; + + final _i2.SortOrder? email; + + final _i2.SortOrder? ruolo; + + final _i2.SortOrder? photoUrl; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const UtenteMinOrderByAggregateInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? firebaseUid; + + final _i2.SortOrder? email; + + final _i2.SortOrder? ruolo; + + final _i2.SortOrder? photoUrl; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const UtenteOrderByWithAggregationInput({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? firebaseUid; + + final _i2.SortOrder? email; + + final _i2.SortOrder? ruolo; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? photoUrl; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i2.SortOrder? nomeVisualizzato; + + final _i2.UtenteCountOrderByAggregateInput? $count; + + final _i2.UtenteMaxOrderByAggregateInput? $max; + + final _i2.UtenteMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NestedEnumRuoloUtenteWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumRuoloUtenteWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.RuoloUtente, _i1.Reference<_i3.RuoloUtente>>? + equals; + + final Iterable<_i3.RuoloUtente>? $in; + + final Iterable<_i3.RuoloUtente>? notIn; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.NestedEnumRuoloUtenteWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumRuoloUtenteFilter? $min; + + final _i2.NestedEnumRuoloUtenteFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumRuoloUtenteWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumRuoloUtenteWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.RuoloUtente, _i1.Reference<_i3.RuoloUtente>>? + equals; + + final Iterable<_i3.RuoloUtente>? $in; + + final Iterable<_i3.RuoloUtente>? notIn; + + final _i1.PrismaUnion<_i3.RuoloUtente, + _i2.NestedEnumRuoloUtenteWithAggregatesFilter>? not; + + final _i2.NestedIntFilter? $count; + + final _i2.NestedEnumRuoloUtenteFilter? $min; + + final _i2.NestedEnumRuoloUtenteFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class UtenteScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const UtenteScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final _i1.PrismaUnion<_i2.UtenteScalarWhereWithAggregatesInput, + Iterable<_i2.UtenteScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.UtenteScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.UtenteScalarWhereWithAggregatesInput, + Iterable<_i2.UtenteScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? firebaseUid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? email; + + final _i1 + .PrismaUnion<_i2.EnumRuoloUtenteWithAggregatesFilter, _i3.RuoloUtente>? + ruolo; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? photoUrl; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + nomeVisualizzato; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const UtenteCountAggregateOutputTypeSelect({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.$all, + }); + + final bool? uuid; + + final bool? firebaseUid; + + final bool? email; + + final bool? ruolo; + + final bool? photoUrl; + + final bool? negozioCodice; + + final bool? nomeVisualizzato; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + '_all': $all, + }; +} + +class UtenteGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const UtenteGroupByOutputTypeCountArgs({this.select}); + + final _i2.UtenteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class UtenteMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const UtenteMinAggregateOutputTypeSelect({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final bool? uuid; + + final bool? firebaseUid; + + final bool? email; + + final bool? ruolo; + + final bool? photoUrl; + + final bool? negozioCodice; + + final bool? nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const UtenteGroupByOutputTypeMinArgs({this.select}); + + final _i2.UtenteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class UtenteMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const UtenteMaxAggregateOutputTypeSelect({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + }); + + final bool? uuid; + + final bool? firebaseUid; + + final bool? email; + + final bool? ruolo; + + final bool? photoUrl; + + final bool? negozioCodice; + + final bool? nomeVisualizzato; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + }; +} + +class UtenteGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const UtenteGroupByOutputTypeMaxArgs({this.select}); + + final _i2.UtenteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class UtenteGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const UtenteGroupByOutputTypeSelect({ + this.uuid, + this.firebaseUid, + this.email, + this.ruolo, + this.photoUrl, + this.negozioCodice, + this.nomeVisualizzato, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? firebaseUid; + + final bool? email; + + final bool? ruolo; + + final bool? photoUrl; + + final bool? negozioCodice; + + final bool? nomeVisualizzato; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'firebaseUid': firebaseUid, + 'email': email, + 'ruolo': ruolo, + 'photoUrl': photoUrl, + 'negozioCodice': negozioCodice, + 'nomeVisualizzato': nomeVisualizzato, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateUtente { + const AggregateUtente({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateUtente.fromJson(Map json) => AggregateUtente( + $count: json['_count'] is Map + ? _i2.UtenteCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.UtenteMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.UtenteMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.UtenteCountAggregateOutputType? $count; + + final _i2.UtenteMinAggregateOutputType? $min; + + final _i2.UtenteMaxAggregateOutputType? $max; +} + +class AggregateUtenteCountArgs + implements _i1.JsonConvertible> { + const AggregateUtenteCountArgs({this.select}); + + final _i2.UtenteCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateUtenteMinArgs + implements _i1.JsonConvertible> { + const AggregateUtenteMinArgs({this.select}); + + final _i2.UtenteMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateUtenteMaxArgs + implements _i1.JsonConvertible> { + const AggregateUtenteMaxArgs({this.select}); + + final _i2.UtenteMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateUtenteSelect + implements _i1.JsonConvertible> { + const AggregateUtenteSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class NegozioCreateInput implements _i1.JsonConvertible> { + const NegozioCreateInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + required this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.ZonaNegozioCreateNestedOneWithoutNegoziInput zonaNegozio; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateManyInput + implements _i1.JsonConvertible> { + const NegozioCreateManyInput({ + required this.codice, + required this.nome, + required this.zonaNegozioId, + }); + + final String codice; + + final String nome; + + final String zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioUpdateInput implements _i1.JsonConvertible> { + const NegozioUpdateInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.zonaNegozio, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.ZonaNegozioUpdateOneRequiredWithoutNegoziNestedInput? zonaNegozio; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'zonaNegozio': zonaNegozio, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpdateManyMutationInput + implements _i1.JsonConvertible> { + const NegozioUpdateManyMutationInput({ + this.codice, + this.nome, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + }; +} + +class NegozioUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateManyInput({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion? + zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioCountAggregateOutputType { + const NegozioCountAggregateOutputType({ + this.codice, + this.nome, + this.zonaNegozioId, + this.$all, + }); + + factory NegozioCountAggregateOutputType.fromJson(Map json) => + NegozioCountAggregateOutputType( + codice: json['codice'], + nome: json['nome'], + zonaNegozioId: json['zonaNegozioId'], + $all: json['_all'], + ); + + final int? codice; + + final int? nome; + + final int? zonaNegozioId; + + final int? $all; +} + +class NegozioMinAggregateOutputType { + const NegozioMinAggregateOutputType({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + factory NegozioMinAggregateOutputType.fromJson(Map json) => + NegozioMinAggregateOutputType( + codice: json['codice'], + nome: json['nome'], + zonaNegozioId: json['zonaNegozioId'], + ); + + final String? codice; + + final String? nome; + + final String? zonaNegozioId; +} + +class NegozioMaxAggregateOutputType { + const NegozioMaxAggregateOutputType({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + factory NegozioMaxAggregateOutputType.fromJson(Map json) => + NegozioMaxAggregateOutputType( + codice: json['codice'], + nome: json['nome'], + zonaNegozioId: json['zonaNegozioId'], + ); + + final String? codice; + + final String? nome; + + final String? zonaNegozioId; +} + +class NegozioGroupByOutputType { + const NegozioGroupByOutputType({ + this.codice, + this.nome, + this.zonaNegozioId, + this.$count, + this.$min, + this.$max, + }); + + factory NegozioGroupByOutputType.fromJson(Map json) => + NegozioGroupByOutputType( + codice: json['codice'], + nome: json['nome'], + zonaNegozioId: json['zonaNegozioId'], + $count: json['_count'] is Map + ? _i2.NegozioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.NegozioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.NegozioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? codice; + + final String? nome; + + final String? zonaNegozioId; + + final _i2.NegozioCountAggregateOutputType? $count; + + final _i2.NegozioMinAggregateOutputType? $min; + + final _i2.NegozioMaxAggregateOutputType? $max; +} + +class NegozioCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const NegozioCountOrderByAggregateInput({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i2.SortOrder? codice; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const NegozioMaxOrderByAggregateInput({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i2.SortOrder? codice; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const NegozioMinOrderByAggregateInput({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i2.SortOrder? codice; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const NegozioOrderByWithAggregationInput({ + this.codice, + this.nome, + this.zonaNegozioId, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? codice; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? zonaNegozioId; + + final _i2.NegozioCountOrderByAggregateInput? $count; + + final _i2.NegozioMaxOrderByAggregateInput? $max; + + final _i2.NegozioMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class NegozioScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const NegozioScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i1.PrismaUnion<_i2.NegozioScalarWhereWithAggregatesInput, + Iterable<_i2.NegozioScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.NegozioScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.NegozioScalarWhereWithAggregatesInput, + Iterable<_i2.NegozioScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? codice; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? zonaNegozioId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NegozioCountAggregateOutputTypeSelect({ + this.codice, + this.nome, + this.zonaNegozioId, + this.$all, + }); + + final bool? codice; + + final bool? nome; + + final bool? zonaNegozioId; + + final bool? $all; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + '_all': $all, + }; +} + +class NegozioGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const NegozioGroupByOutputTypeCountArgs({this.select}); + + final _i2.NegozioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NegozioMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NegozioMinAggregateOutputTypeSelect({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final bool? codice; + + final bool? nome; + + final bool? zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const NegozioGroupByOutputTypeMinArgs({this.select}); + + final _i2.NegozioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NegozioMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const NegozioMaxAggregateOutputTypeSelect({ + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final bool? codice; + + final bool? nome; + + final bool? zonaNegozioId; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const NegozioGroupByOutputTypeMaxArgs({this.select}); + + final _i2.NegozioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class NegozioGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const NegozioGroupByOutputTypeSelect({ + this.codice, + this.nome, + this.zonaNegozioId, + this.$count, + this.$min, + this.$max, + }); + + final bool? codice; + + final bool? nome; + + final bool? zonaNegozioId; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateNegozio { + const AggregateNegozio({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateNegozio.fromJson(Map json) => AggregateNegozio( + $count: json['_count'] is Map + ? _i2.NegozioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.NegozioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.NegozioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.NegozioCountAggregateOutputType? $count; + + final _i2.NegozioMinAggregateOutputType? $min; + + final _i2.NegozioMaxAggregateOutputType? $max; +} + +class AggregateNegozioCountArgs + implements _i1.JsonConvertible> { + const AggregateNegozioCountArgs({this.select}); + + final _i2.NegozioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNegozioMinArgs + implements _i1.JsonConvertible> { + const AggregateNegozioMinArgs({this.select}); + + final _i2.NegozioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNegozioMaxArgs + implements _i1.JsonConvertible> { + const AggregateNegozioMaxArgs({this.select}); + + final _i2.NegozioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateNegozioSelect + implements _i1.JsonConvertible> { + const AggregateNegozioSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class IngressiCreateInput implements _i1.JsonConvertible> { + const IngressiCreateInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utente, + required this.negozio, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final _i2.UtenteCreateNestedOneWithoutIngressiInput utente; + + final _i2.NegozioCreateNestedOneWithoutIngressiInput negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utente': utente, + 'negozio': negozio, + }; +} + +class IngressiUncheckedCreateInput + implements _i1.JsonConvertible> { + const IngressiUncheckedCreateInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utenteUuid, + required this.negozioCodice, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String utenteUuid; + + final String negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiCreateManyInput + implements _i1.JsonConvertible> { + const IngressiCreateManyInput({ + this.uuid, + required this.data, + required this.clienti, + required this.nonClienti, + required this.utenteUuid, + required this.negozioCodice, + }); + + final String? uuid; + + final DateTime data; + + final int clienti; + + final int nonClienti; + + final String utenteUuid; + + final String negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiUpdateInput implements _i1.JsonConvertible> { + const IngressiUpdateInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utente, + this.negozio, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i2.UtenteUpdateOneRequiredWithoutIngressiNestedInput? utente; + + final _i2.NegozioUpdateOneRequiredWithoutIngressiNestedInput? negozio; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utente': utente, + 'negozio': negozio, + }; +} + +class IngressiUncheckedUpdateInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion? + negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const IngressiUncheckedUpdateManyInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? data; + + final _i1.PrismaUnion? clienti; + + final _i1.PrismaUnion? nonClienti; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion? + negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiCountAggregateOutputType { + const IngressiCountAggregateOutputType({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.$all, + }); + + factory IngressiCountAggregateOutputType.fromJson(Map json) => + IngressiCountAggregateOutputType( + uuid: json['uuid'], + data: json['data'], + clienti: json['clienti'], + nonClienti: json['nonClienti'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + $all: json['_all'], + ); + + final int? uuid; + + final int? data; + + final int? clienti; + + final int? nonClienti; + + final int? utenteUuid; + + final int? negozioCodice; + + final int? $all; +} + +class IngressiAvgAggregateOutputType { + const IngressiAvgAggregateOutputType({ + this.clienti, + this.nonClienti, + }); + + factory IngressiAvgAggregateOutputType.fromJson(Map json) => + IngressiAvgAggregateOutputType( + clienti: json['clienti'], + nonClienti: json['nonClienti'], + ); + + final double? clienti; + + final double? nonClienti; +} + +class IngressiSumAggregateOutputType { + const IngressiSumAggregateOutputType({ + this.clienti, + this.nonClienti, + }); + + factory IngressiSumAggregateOutputType.fromJson(Map json) => + IngressiSumAggregateOutputType( + clienti: json['clienti'], + nonClienti: json['nonClienti'], + ); + + final int? clienti; + + final int? nonClienti; +} + +class IngressiMinAggregateOutputType { + const IngressiMinAggregateOutputType({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + factory IngressiMinAggregateOutputType.fromJson(Map json) => + IngressiMinAggregateOutputType( + uuid: json['uuid'], + data: json['data'], + clienti: json['clienti'], + nonClienti: json['nonClienti'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + ); + + final String? uuid; + + final DateTime? data; + + final int? clienti; + + final int? nonClienti; + + final String? utenteUuid; + + final String? negozioCodice; +} + +class IngressiMaxAggregateOutputType { + const IngressiMaxAggregateOutputType({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + factory IngressiMaxAggregateOutputType.fromJson(Map json) => + IngressiMaxAggregateOutputType( + uuid: json['uuid'], + data: json['data'], + clienti: json['clienti'], + nonClienti: json['nonClienti'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + ); + + final String? uuid; + + final DateTime? data; + + final int? clienti; + + final int? nonClienti; + + final String? utenteUuid; + + final String? negozioCodice; +} + +class IngressiGroupByOutputType { + const IngressiGroupByOutputType({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory IngressiGroupByOutputType.fromJson(Map json) => + IngressiGroupByOutputType( + uuid: json['uuid'], + data: json['data'], + clienti: json['clienti'], + nonClienti: json['nonClienti'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + $count: json['_count'] is Map + ? _i2.IngressiCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.IngressiAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.IngressiSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.IngressiMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.IngressiMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final DateTime? data; + + final int? clienti; + + final int? nonClienti; + + final String? utenteUuid; + + final String? negozioCodice; + + final _i2.IngressiCountAggregateOutputType? $count; + + final _i2.IngressiAvgAggregateOutputType? $avg; + + final _i2.IngressiSumAggregateOutputType? $sum; + + final _i2.IngressiMinAggregateOutputType? $min; + + final _i2.IngressiMaxAggregateOutputType? $max; +} + +class IngressiCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const IngressiCountOrderByAggregateInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? data; + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const IngressiAvgOrderByAggregateInput({ + this.clienti, + this.nonClienti, + }); + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + @override + Map toJson() => { + 'clienti': clienti, + 'nonClienti': nonClienti, + }; +} + +class IngressiMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const IngressiMaxOrderByAggregateInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? data; + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const IngressiMinOrderByAggregateInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? data; + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const IngressiSumOrderByAggregateInput({ + this.clienti, + this.nonClienti, + }); + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + @override + Map toJson() => { + 'clienti': clienti, + 'nonClienti': nonClienti, + }; +} + +class IngressiOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const IngressiOrderByWithAggregationInput({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? data; + + final _i2.SortOrder? clienti; + + final _i2.SortOrder? nonClienti; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.IngressiCountOrderByAggregateInput? $count; + + final _i2.IngressiAvgOrderByAggregateInput? $avg; + + final _i2.IngressiMaxOrderByAggregateInput? $max; + + final _i2.IngressiMinOrderByAggregateInput? $min; + + final _i2.IngressiSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class IngressiScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const IngressiScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final _i1.PrismaUnion<_i2.IngressiScalarWhereWithAggregatesInput, + Iterable<_i2.IngressiScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.IngressiScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.IngressiScalarWhereWithAggregatesInput, + Iterable<_i2.IngressiScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? data; + + final _i1.PrismaUnion<_i2.IntWithAggregatesFilter, int>? clienti; + + final _i1.PrismaUnion<_i2.IntWithAggregatesFilter, int>? nonClienti; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? negozioCodice; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiCountAggregateOutputTypeSelect({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.$all, + }); + + final bool? uuid; + + final bool? data; + + final bool? clienti; + + final bool? nonClienti; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_all': $all, + }; +} + +class IngressiGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeCountArgs({this.select}); + + final _i2.IngressiCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IngressiAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiAvgAggregateOutputTypeSelect({ + this.clienti, + this.nonClienti, + }); + + final bool? clienti; + + final bool? nonClienti; + + @override + Map toJson() => { + 'clienti': clienti, + 'nonClienti': nonClienti, + }; +} + +class IngressiGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeAvgArgs({this.select}); + + final _i2.IngressiAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IngressiSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiSumAggregateOutputTypeSelect({ + this.clienti, + this.nonClienti, + }); + + final bool? clienti; + + final bool? nonClienti; + + @override + Map toJson() => { + 'clienti': clienti, + 'nonClienti': nonClienti, + }; +} + +class IngressiGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeSumArgs({this.select}); + + final _i2.IngressiSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IngressiMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiMinAggregateOutputTypeSelect({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final bool? uuid; + + final bool? data; + + final bool? clienti; + + final bool? nonClienti; + + final bool? utenteUuid; + + final bool? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeMinArgs({this.select}); + + final _i2.IngressiMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IngressiMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiMaxAggregateOutputTypeSelect({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + }); + + final bool? uuid; + + final bool? data; + + final bool? clienti; + + final bool? nonClienti; + + final bool? utenteUuid; + + final bool? negozioCodice; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + }; +} + +class IngressiGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeMaxArgs({this.select}); + + final _i2.IngressiMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class IngressiGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const IngressiGroupByOutputTypeSelect({ + this.uuid, + this.data, + this.clienti, + this.nonClienti, + this.utenteUuid, + this.negozioCodice, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? data; + + final bool? clienti; + + final bool? nonClienti; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'data': data, + 'clienti': clienti, + 'nonClienti': nonClienti, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateIngressi { + const AggregateIngressi({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateIngressi.fromJson(Map json) => AggregateIngressi( + $count: json['_count'] is Map + ? _i2.IngressiCountAggregateOutputType.fromJson(json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.IngressiAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.IngressiSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.IngressiMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.IngressiMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.IngressiCountAggregateOutputType? $count; + + final _i2.IngressiAvgAggregateOutputType? $avg; + + final _i2.IngressiSumAggregateOutputType? $sum; + + final _i2.IngressiMinAggregateOutputType? $min; + + final _i2.IngressiMaxAggregateOutputType? $max; +} + +class AggregateIngressiCountArgs + implements _i1.JsonConvertible> { + const AggregateIngressiCountArgs({this.select}); + + final _i2.IngressiCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIngressiAvgArgs + implements _i1.JsonConvertible> { + const AggregateIngressiAvgArgs({this.select}); + + final _i2.IngressiAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIngressiSumArgs + implements _i1.JsonConvertible> { + const AggregateIngressiSumArgs({this.select}); + + final _i2.IngressiSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIngressiMinArgs + implements _i1.JsonConvertible> { + const AggregateIngressiMinArgs({this.select}); + + final _i2.IngressiMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIngressiMaxArgs + implements _i1.JsonConvertible> { + const AggregateIngressiMaxArgs({this.select}); + + final _i2.IngressiMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateIngressiSelect + implements _i1.JsonConvertible> { + const AggregateIngressiSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +enum ZonaNegozioScalar implements _i1.PrismaEnum, _i1.Reference { + id('id', 'ZonaNegozio'), + nome('nome', 'ZonaNegozio'); + + const ZonaNegozioScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class NegozioCreateWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioCreateWithoutZonaNegozioInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoCreateNestedManyWithoutNegozioPreferitoInput? soggetti; + + final _i2.IngressiCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedCreateWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateWithoutZonaNegozioInput({ + required this.codice, + required this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final String codice; + + final String nome; + + final _i2.PraticaUncheckedCreateNestedManyWithoutNegozioInput? pratiche; + + final _i2.UtenteUncheckedCreateNestedManyWithoutNegozioInput? utenti; + + final _i2.ContrattoUncheckedCreateNestedManyWithoutNegozioInput? contratti; + + final _i2.SoggettoUncheckedCreateNestedManyWithoutNegozioPreferitoInput? + soggetti; + + final _i2.IngressiUncheckedCreateNestedManyWithoutNegozioInput? ingressi; + + final _i2.LeadUncheckedCreateNestedManyWithoutNegozioInput? leads; + + final _i2.OrdineUncheckedCreateNestedManyWithoutNegozioInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioCreateOrConnectWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioCreateOrConnectWithoutZonaNegozioInput({ + required this.where, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutZonaNegozioInput, + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class NegozioCreateManyZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioCreateManyZonaNegozioInput({ + required this.codice, + required this.nome, + }); + + final String codice; + + final String nome; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + }; +} + +class NegozioCreateManyZonaNegozioInputEnvelope + implements _i1.JsonConvertible> { + const NegozioCreateManyZonaNegozioInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.NegozioCreateManyZonaNegozioInput, + Iterable<_i2.NegozioCreateManyZonaNegozioInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class NegozioCreateNestedManyWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioCreateNestedManyWithoutZonaNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.NegozioCreateWithoutZonaNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.NegozioCreateWithoutZonaNegozioInput>, + _i1.PrismaUnion< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput, + Iterable< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput, + Iterable<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput>>? + connectOrCreate; + + final _i2.NegozioCreateManyZonaNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ZonaNegozioCreateInput + implements _i1.JsonConvertible> { + const ZonaNegozioCreateInput({ + required this.id, + required this.nome, + this.negozi, + }); + + final String id; + + final String nome; + + final _i2.NegozioCreateNestedManyWithoutZonaNegozioInput? negozi; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + }; +} + +class NegozioUncheckedCreateNestedManyWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUncheckedCreateNestedManyWithoutZonaNegozioInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.NegozioCreateWithoutZonaNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.NegozioCreateWithoutZonaNegozioInput>, + _i1.PrismaUnion< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput, + Iterable< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput, + Iterable<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput>>? + connectOrCreate; + + final _i2.NegozioCreateManyZonaNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class ZonaNegozioUncheckedCreateInput + implements _i1.JsonConvertible> { + const ZonaNegozioUncheckedCreateInput({ + required this.id, + required this.nome, + this.negozi, + }); + + final String id; + + final String nome; + + final _i2.NegozioUncheckedCreateNestedManyWithoutZonaNegozioInput? negozi; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + }; +} + +class ZonaNegozioCreateManyInput + implements _i1.JsonConvertible> { + const ZonaNegozioCreateManyInput({ + required this.id, + required this.nome, + }); + + final String id; + + final String nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class NegozioUpdateWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithoutZonaNegozioInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUpdateManyWithoutNegozioPreferitoNestedInput? soggetti; + + final _i2.IngressiUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUncheckedUpdateWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateWithoutZonaNegozioInput({ + this.codice, + this.nome, + this.pratiche, + this.utenti, + this.contratti, + this.soggetti, + this.ingressi, + this.leads, + this.ordine, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + final _i2.PraticaUncheckedUpdateManyWithoutNegozioNestedInput? pratiche; + + final _i2.UtenteUncheckedUpdateManyWithoutNegozioNestedInput? utenti; + + final _i2.ContrattoUncheckedUpdateManyWithoutNegozioNestedInput? contratti; + + final _i2.SoggettoUncheckedUpdateManyWithoutNegozioPreferitoNestedInput? + soggetti; + + final _i2.IngressiUncheckedUpdateManyWithoutNegozioNestedInput? ingressi; + + final _i2.LeadUncheckedUpdateManyWithoutNegozioNestedInput? leads; + + final _i2.OrdineUncheckedUpdateManyWithoutNegozioNestedInput? ordine; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + 'pratiche': pratiche, + 'utenti': utenti, + 'contratti': contratti, + 'soggetti': soggetti, + 'ingressi': ingressi, + 'leads': leads, + 'Ordine': ordine, + }; +} + +class NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutZonaNegozioInput, + _i2.NegozioUncheckedUpdateWithoutZonaNegozioInput> update; + + final _i1.PrismaUnion<_i2.NegozioCreateWithoutZonaNegozioInput, + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.NegozioWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithoutZonaNegozioInput, + _i2.NegozioUncheckedUpdateWithoutZonaNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioScalarWhereInput + implements _i1.JsonConvertible> { + const NegozioScalarWhereInput({ + this.AND, + this.OR, + this.NOT, + this.codice, + this.nome, + this.zonaNegozioId, + }); + + final _i1.PrismaUnion<_i2.NegozioScalarWhereInput, + Iterable<_i2.NegozioScalarWhereInput>>? AND; + + final Iterable<_i2.NegozioScalarWhereInput>? OR; + + final _i1.PrismaUnion<_i2.NegozioScalarWhereInput, + Iterable<_i2.NegozioScalarWhereInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringFilter, String>? codice; + + final _i1.PrismaUnion<_i2.StringFilter, String>? nome; + + final _i1.PrismaUnion<_i2.StringFilter, String>? zonaNegozioId; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'codice': codice, + 'nome': nome, + 'zonaNegozioId': zonaNegozioId, + }; +} + +class NegozioUncheckedUpdateManyWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateManyWithoutZonaNegozioInput({ + this.codice, + this.nome, + }); + + final _i1.PrismaUnion? codice; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'codice': codice, + 'nome': nome, + }; +} + +class NegozioUpdateManyWithWhereWithoutZonaNegozioInput + implements _i1.JsonConvertible> { + const NegozioUpdateManyWithWhereWithoutZonaNegozioInput({ + required this.where, + required this.data, + }); + + final _i2.NegozioScalarWhereInput where; + + final _i1.PrismaUnion<_i2.NegozioUpdateManyMutationInput, + _i2.NegozioUncheckedUpdateManyWithoutZonaNegozioInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class NegozioUpdateManyWithoutZonaNegozioNestedInput + implements _i1.JsonConvertible> { + const NegozioUpdateManyWithoutZonaNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.NegozioCreateWithoutZonaNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.NegozioCreateWithoutZonaNegozioInput>, + _i1.PrismaUnion< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput, + Iterable< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput, + Iterable<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput>>? + upsert; + + final _i2.NegozioCreateManyZonaNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput>>? + update; + + final _i1.PrismaUnion<_i2.NegozioUpdateManyWithWhereWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpdateManyWithWhereWithoutZonaNegozioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.NegozioScalarWhereInput, + Iterable<_i2.NegozioScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ZonaNegozioUpdateInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpdateInput({ + this.id, + this.nome, + this.negozi, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.NegozioUpdateManyWithoutZonaNegozioNestedInput? negozi; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + }; +} + +class NegozioUncheckedUpdateManyWithoutZonaNegozioNestedInput + implements _i1.JsonConvertible> { + const NegozioUncheckedUpdateManyWithoutZonaNegozioNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.NegozioCreateWithoutZonaNegozioInput, + _i1.PrismaUnion< + Iterable<_i2.NegozioCreateWithoutZonaNegozioInput>, + _i1.PrismaUnion< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput, + Iterable< + _i2.NegozioUncheckedCreateWithoutZonaNegozioInput>>>>? create; + + final _i1.PrismaUnion<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput, + Iterable<_i2.NegozioCreateOrConnectWithoutZonaNegozioInput>>? + connectOrCreate; + + final _i1.PrismaUnion<_i2.NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpsertWithWhereUniqueWithoutZonaNegozioInput>>? + upsert; + + final _i2.NegozioCreateManyZonaNegozioInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.NegozioWhereUniqueInput, + Iterable<_i2.NegozioWhereUniqueInput>>? connect; + + final _i1.PrismaUnion<_i2.NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpdateWithWhereUniqueWithoutZonaNegozioInput>>? + update; + + final _i1.PrismaUnion<_i2.NegozioUpdateManyWithWhereWithoutZonaNegozioInput, + Iterable<_i2.NegozioUpdateManyWithWhereWithoutZonaNegozioInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.NegozioScalarWhereInput, + Iterable<_i2.NegozioScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class ZonaNegozioUncheckedUpdateInput + implements _i1.JsonConvertible> { + const ZonaNegozioUncheckedUpdateInput({ + this.id, + this.nome, + this.negozi, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + final _i2.NegozioUncheckedUpdateManyWithoutZonaNegozioNestedInput? negozi; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + 'negozi': negozi, + }; +} + +class ZonaNegozioUpdateManyMutationInput + implements _i1.JsonConvertible> { + const ZonaNegozioUpdateManyMutationInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const ZonaNegozioUncheckedUpdateManyInput({ + this.id, + this.nome, + }); + + final _i1.PrismaUnion? id; + + final _i1.PrismaUnion? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioCountAggregateOutputType { + const ZonaNegozioCountAggregateOutputType({ + this.id, + this.nome, + this.$all, + }); + + factory ZonaNegozioCountAggregateOutputType.fromJson(Map json) => + ZonaNegozioCountAggregateOutputType( + id: json['id'], + nome: json['nome'], + $all: json['_all'], + ); + + final int? id; + + final int? nome; + + final int? $all; +} + +class ZonaNegozioMinAggregateOutputType { + const ZonaNegozioMinAggregateOutputType({ + this.id, + this.nome, + }); + + factory ZonaNegozioMinAggregateOutputType.fromJson(Map json) => + ZonaNegozioMinAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class ZonaNegozioMaxAggregateOutputType { + const ZonaNegozioMaxAggregateOutputType({ + this.id, + this.nome, + }); + + factory ZonaNegozioMaxAggregateOutputType.fromJson(Map json) => + ZonaNegozioMaxAggregateOutputType( + id: json['id'], + nome: json['nome'], + ); + + final String? id; + + final String? nome; +} + +class ZonaNegozioGroupByOutputType { + const ZonaNegozioGroupByOutputType({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + factory ZonaNegozioGroupByOutputType.fromJson(Map json) => + ZonaNegozioGroupByOutputType( + id: json['id'], + nome: json['nome'], + $count: json['_count'] is Map + ? _i2.ZonaNegozioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ZonaNegozioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ZonaNegozioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? id; + + final String? nome; + + final _i2.ZonaNegozioCountAggregateOutputType? $count; + + final _i2.ZonaNegozioMinAggregateOutputType? $min; + + final _i2.ZonaNegozioMaxAggregateOutputType? $max; +} + +class ZonaNegozioCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const ZonaNegozioCountOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const ZonaNegozioMaxOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const ZonaNegozioMinOrderByAggregateInput({ + this.id, + this.nome, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const ZonaNegozioOrderByWithAggregationInput({ + this.id, + this.nome, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? id; + + final _i2.SortOrder? nome; + + final _i2.ZonaNegozioCountOrderByAggregateInput? $count; + + final _i2.ZonaNegozioMaxOrderByAggregateInput? $max; + + final _i2.ZonaNegozioMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class ZonaNegozioScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const ZonaNegozioScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.id, + this.nome, + }); + + final _i1.PrismaUnion<_i2.ZonaNegozioScalarWhereWithAggregatesInput, + Iterable<_i2.ZonaNegozioScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.ZonaNegozioScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.ZonaNegozioScalarWhereWithAggregatesInput, + Iterable<_i2.ZonaNegozioScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? id; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ZonaNegozioCountAggregateOutputTypeSelect({ + this.id, + this.nome, + this.$all, + }); + + final bool? id; + + final bool? nome; + + final bool? $all; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_all': $all, + }; +} + +class ZonaNegozioGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const ZonaNegozioGroupByOutputTypeCountArgs({this.select}); + + final _i2.ZonaNegozioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ZonaNegozioMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ZonaNegozioMinAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const ZonaNegozioGroupByOutputTypeMinArgs({this.select}); + + final _i2.ZonaNegozioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ZonaNegozioMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const ZonaNegozioMaxAggregateOutputTypeSelect({ + this.id, + this.nome, + }); + + final bool? id; + + final bool? nome; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + }; +} + +class ZonaNegozioGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const ZonaNegozioGroupByOutputTypeMaxArgs({this.select}); + + final _i2.ZonaNegozioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class ZonaNegozioGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const ZonaNegozioGroupByOutputTypeSelect({ + this.id, + this.nome, + this.$count, + this.$min, + this.$max, + }); + + final bool? id; + + final bool? nome; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'id': id, + 'nome': nome, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateZonaNegozio { + const AggregateZonaNegozio({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateZonaNegozio.fromJson(Map json) => AggregateZonaNegozio( + $count: json['_count'] is Map + ? _i2.ZonaNegozioCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.ZonaNegozioMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.ZonaNegozioMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.ZonaNegozioCountAggregateOutputType? $count; + + final _i2.ZonaNegozioMinAggregateOutputType? $min; + + final _i2.ZonaNegozioMaxAggregateOutputType? $max; +} + +class AggregateZonaNegozioCountArgs + implements _i1.JsonConvertible> { + const AggregateZonaNegozioCountArgs({this.select}); + + final _i2.ZonaNegozioCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateZonaNegozioMinArgs + implements _i1.JsonConvertible> { + const AggregateZonaNegozioMinArgs({this.select}); + + final _i2.ZonaNegozioMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateZonaNegozioMaxArgs + implements _i1.JsonConvertible> { + const AggregateZonaNegozioMaxArgs({this.select}); + + final _i2.ZonaNegozioMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateZonaNegozioSelect + implements _i1.JsonConvertible> { + const AggregateZonaNegozioSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class LeadCreateInput implements _i1.JsonConvertible> { + const LeadCreateInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + required this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.StatoOpportunitaCreateNestedOneWithoutLeadsInput statoOpportunita; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedCreateInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateManyInput implements _i1.JsonConvertible> { + const LeadCreateManyInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + required this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final String statoOpportunitaUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateInput implements _i1.JsonConvertible> { + const LeadUpdateInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.statoOpportunita, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.StatoOpportunitaUpdateOneRequiredWithoutLeadsNestedInput? + statoOpportunita; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'statoOpportunita': statoOpportunita, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedUpdateInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion? + statoOpportunitaUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCountAggregateOutputType { + const LeadCountAggregateOutputType({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.$all, + }); + + factory LeadCountAggregateOutputType.fromJson(Map json) => + LeadCountAggregateOutputType( + uuid: json['uuid'], + opportunitaUuid: json['opportunitaUuid'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOpportunitaUuid: json['statoOpportunitaUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + agenteUuid: json['agenteUuid'], + appuntamenti: json['appuntamenti'], + form: json['form'], + dataInserimento: json['dataInserimento'], + dataScadenza: json['dataScadenza'], + dataAppuntamento: json['dataAppuntamento'], + nota: json['nota'], + $all: json['_all'], + ); + + final int? uuid; + + final int? opportunitaUuid; + + final int? soggettoUuid; + + final int? domicilioUuid; + + final int? statoOpportunitaUuid; + + final int? utenteUuid; + + final int? negozioCodice; + + final int? agenteUuid; + + final int? appuntamenti; + + final int? form; + + final int? dataInserimento; + + final int? dataScadenza; + + final int? dataAppuntamento; + + final int? nota; + + final int? $all; +} + +class LeadMinAggregateOutputType { + const LeadMinAggregateOutputType({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + factory LeadMinAggregateOutputType.fromJson(Map json) => + LeadMinAggregateOutputType( + uuid: json['uuid'], + opportunitaUuid: json['opportunitaUuid'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOpportunitaUuid: json['statoOpportunitaUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + agenteUuid: json['agenteUuid'], + appuntamenti: json['appuntamenti'], + form: json['form'], + dataInserimento: json['dataInserimento'], + dataScadenza: json['dataScadenza'], + dataAppuntamento: json['dataAppuntamento'], + nota: json['nota'], + ); + + final String? uuid; + + final String? opportunitaUuid; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOpportunitaUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? agenteUuid; + + final String? appuntamenti; + + final String? form; + + final DateTime? dataInserimento; + + final DateTime? dataScadenza; + + final DateTime? dataAppuntamento; + + final String? nota; +} + +class LeadMaxAggregateOutputType { + const LeadMaxAggregateOutputType({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + factory LeadMaxAggregateOutputType.fromJson(Map json) => + LeadMaxAggregateOutputType( + uuid: json['uuid'], + opportunitaUuid: json['opportunitaUuid'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOpportunitaUuid: json['statoOpportunitaUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + agenteUuid: json['agenteUuid'], + appuntamenti: json['appuntamenti'], + form: json['form'], + dataInserimento: json['dataInserimento'], + dataScadenza: json['dataScadenza'], + dataAppuntamento: json['dataAppuntamento'], + nota: json['nota'], + ); + + final String? uuid; + + final String? opportunitaUuid; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOpportunitaUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? agenteUuid; + + final String? appuntamenti; + + final String? form; + + final DateTime? dataInserimento; + + final DateTime? dataScadenza; + + final DateTime? dataAppuntamento; + + final String? nota; +} + +class LeadGroupByOutputType { + const LeadGroupByOutputType({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.$count, + this.$min, + this.$max, + }); + + factory LeadGroupByOutputType.fromJson(Map json) => LeadGroupByOutputType( + uuid: json['uuid'], + opportunitaUuid: json['opportunitaUuid'], + soggettoUuid: json['soggettoUuid'], + domicilioUuid: json['domicilioUuid'], + statoOpportunitaUuid: json['statoOpportunitaUuid'], + utenteUuid: json['utenteUuid'], + negozioCodice: json['negozioCodice'], + agenteUuid: json['agenteUuid'], + appuntamenti: json['appuntamenti'], + form: json['form'], + dataInserimento: json['dataInserimento'], + dataScadenza: json['dataScadenza'], + dataAppuntamento: json['dataAppuntamento'], + nota: json['nota'], + $count: json['_count'] is Map + ? _i2.LeadCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.LeadMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.LeadMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? opportunitaUuid; + + final String? soggettoUuid; + + final String? domicilioUuid; + + final String? statoOpportunitaUuid; + + final String? utenteUuid; + + final String? negozioCodice; + + final String? agenteUuid; + + final String? appuntamenti; + + final String? form; + + final DateTime? dataInserimento; + + final DateTime? dataScadenza; + + final DateTime? dataAppuntamento; + + final String? nota; + + final _i2.LeadCountAggregateOutputType? $count; + + final _i2.LeadMinAggregateOutputType? $min; + + final _i2.LeadMaxAggregateOutputType? $max; +} + +class LeadCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const LeadCountOrderByAggregateInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOpportunitaUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? agenteUuid; + + final _i2.SortOrder? appuntamenti; + + final _i2.SortOrder? form; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataScadenza; + + final _i2.SortOrder? dataAppuntamento; + + final _i2.SortOrder? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const LeadMaxOrderByAggregateInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOpportunitaUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? agenteUuid; + + final _i2.SortOrder? appuntamenti; + + final _i2.SortOrder? form; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataScadenza; + + final _i2.SortOrder? dataAppuntamento; + + final _i2.SortOrder? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const LeadMinOrderByAggregateInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.SortOrder? soggettoUuid; + + final _i2.SortOrder? domicilioUuid; + + final _i2.SortOrder? statoOpportunitaUuid; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? negozioCodice; + + final _i2.SortOrder? agenteUuid; + + final _i2.SortOrder? appuntamenti; + + final _i2.SortOrder? form; + + final _i2.SortOrder? dataInserimento; + + final _i2.SortOrder? dataScadenza; + + final _i2.SortOrder? dataAppuntamento; + + final _i2.SortOrder? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const LeadOrderByWithAggregationInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.SortOrder? soggettoUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? domicilioUuid; + + final _i2.SortOrder? statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? negozioCodice; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? agenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? appuntamenti; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? form; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataInserimento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataScadenza; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? nota; + + final _i2.LeadCountOrderByAggregateInput? $count; + + final _i2.LeadMaxOrderByAggregateInput? $max; + + final _i2.LeadMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class LeadScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const LeadScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion<_i2.LeadScalarWhereWithAggregatesInput, + Iterable<_i2.LeadScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.LeadScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.LeadScalarWhereWithAggregatesInput, + Iterable<_i2.LeadScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + opportunitaUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? soggettoUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? domicilioUuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + statoOpportunitaUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? negozioCodice; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? agenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? appuntamenti; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? form; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataInserimento; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataScadenza; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataAppuntamento; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? nota; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LeadCountAggregateOutputTypeSelect({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.$all, + }); + + final bool? uuid; + + final bool? opportunitaUuid; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOpportunitaUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? agenteUuid; + + final bool? appuntamenti; + + final bool? form; + + final bool? dataInserimento; + + final bool? dataScadenza; + + final bool? dataAppuntamento; + + final bool? nota; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + '_all': $all, + }; +} + +class LeadGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const LeadGroupByOutputTypeCountArgs({this.select}); + + final _i2.LeadCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LeadMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LeadMinAggregateOutputTypeSelect({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final bool? uuid; + + final bool? opportunitaUuid; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOpportunitaUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? agenteUuid; + + final bool? appuntamenti; + + final bool? form; + + final bool? dataInserimento; + + final bool? dataScadenza; + + final bool? dataAppuntamento; + + final bool? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const LeadGroupByOutputTypeMinArgs({this.select}); + + final _i2.LeadMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LeadMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const LeadMaxAggregateOutputTypeSelect({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final bool? uuid; + + final bool? opportunitaUuid; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOpportunitaUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? agenteUuid; + + final bool? appuntamenti; + + final bool? form; + + final bool? dataInserimento; + + final bool? dataScadenza; + + final bool? dataAppuntamento; + + final bool? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const LeadGroupByOutputTypeMaxArgs({this.select}); + + final _i2.LeadMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class LeadGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const LeadGroupByOutputTypeSelect({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.statoOpportunitaUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? opportunitaUuid; + + final bool? soggettoUuid; + + final bool? domicilioUuid; + + final bool? statoOpportunitaUuid; + + final bool? utenteUuid; + + final bool? negozioCodice; + + final bool? agenteUuid; + + final bool? appuntamenti; + + final bool? form; + + final bool? dataInserimento; + + final bool? dataScadenza; + + final bool? dataAppuntamento; + + final bool? nota; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'statoOpportunitaUuid': statoOpportunitaUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateLead { + const AggregateLead({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateLead.fromJson(Map json) => AggregateLead( + $count: json['_count'] is Map + ? _i2.LeadCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.LeadMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.LeadMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.LeadCountAggregateOutputType? $count; + + final _i2.LeadMinAggregateOutputType? $min; + + final _i2.LeadMaxAggregateOutputType? $max; +} + +class AggregateLeadCountArgs + implements _i1.JsonConvertible> { + const AggregateLeadCountArgs({this.select}); + + final _i2.LeadCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLeadMinArgs + implements _i1.JsonConvertible> { + const AggregateLeadMinArgs({this.select}); + + final _i2.LeadMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLeadMaxArgs + implements _i1.JsonConvertible> { + const AggregateLeadMaxArgs({this.select}); + + final _i2.LeadMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateLeadSelect implements _i1.JsonConvertible> { + const AggregateLeadSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class OpportunitaCreateInput + implements _i1.JsonConvertible> { + const OpportunitaCreateInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaGestiteInput? gestoriLead; + + final _i2.UtenteCreateNestedManyWithoutOpportunitaAssegnateInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUncheckedCreateInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedCreateInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + final _i2.LeadUncheckedCreateNestedManyWithoutOpportunitaInput? leads; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaGestiteInput? + gestoriLead; + + final _i2.UtenteUncheckedCreateNestedManyWithoutOpportunitaAssegnateInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaCreateManyInput + implements _i1.JsonConvertible> { + const OpportunitaCreateManyInput({ + this.uuid, + required this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion? dataInizio; + + final _i1.PrismaUnion? dataFine; + + final _i1.PrismaUnion? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaUpdateInput + implements _i1.JsonConvertible> { + const OpportunitaUpdateInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUpdateManyWithoutOpportunitaGestiteNestedInput? gestoriLead; + + final _i2.UtenteUpdateManyWithoutOpportunitaAssegnateNestedInput? agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.leads, + this.gestoriLead, + this.agenti, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i2.LeadUncheckedUpdateManyWithoutOpportunitaNestedInput? leads; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaGestiteNestedInput? + gestoriLead; + + final _i2.UtenteUncheckedUpdateManyWithoutOpportunitaAssegnateNestedInput? + agenti; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + 'leads': leads, + 'gestoriLead': gestoriLead, + 'agenti': agenti, + }; +} + +class OpportunitaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const OpportunitaUncheckedUpdateManyInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInizio; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataFine; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaCountAggregateOutputType { + const OpportunitaCountAggregateOutputType({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.$all, + }); + + factory OpportunitaCountAggregateOutputType.fromJson(Map json) => + OpportunitaCountAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataInizio: json['dataInizio'], + dataFine: json['dataFine'], + form: json['form'], + $all: json['_all'], + ); + + final int? uuid; + + final int? nome; + + final int? dataInizio; + + final int? dataFine; + + final int? form; + + final int? $all; +} + +class OpportunitaMinAggregateOutputType { + const OpportunitaMinAggregateOutputType({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + factory OpportunitaMinAggregateOutputType.fromJson(Map json) => + OpportunitaMinAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataInizio: json['dataInizio'], + dataFine: json['dataFine'], + form: json['form'], + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataInizio; + + final DateTime? dataFine; + + final String? form; +} + +class OpportunitaMaxAggregateOutputType { + const OpportunitaMaxAggregateOutputType({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + factory OpportunitaMaxAggregateOutputType.fromJson(Map json) => + OpportunitaMaxAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataInizio: json['dataInizio'], + dataFine: json['dataFine'], + form: json['form'], + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataInizio; + + final DateTime? dataFine; + + final String? form; +} + +class OpportunitaGroupByOutputType { + const OpportunitaGroupByOutputType({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.$count, + this.$min, + this.$max, + }); + + factory OpportunitaGroupByOutputType.fromJson(Map json) => + OpportunitaGroupByOutputType( + uuid: json['uuid'], + nome: json['nome'], + dataInizio: json['dataInizio'], + dataFine: json['dataFine'], + form: json['form'], + $count: json['_count'] is Map + ? _i2.OpportunitaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.OpportunitaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OpportunitaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? nome; + + final DateTime? dataInizio; + + final DateTime? dataFine; + + final String? form; + + final _i2.OpportunitaCountAggregateOutputType? $count; + + final _i2.OpportunitaMinAggregateOutputType? $min; + + final _i2.OpportunitaMaxAggregateOutputType? $max; +} + +class OpportunitaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const OpportunitaCountOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataInizio; + + final _i2.SortOrder? dataFine; + + final _i2.SortOrder? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const OpportunitaMaxOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataInizio; + + final _i2.SortOrder? dataFine; + + final _i2.SortOrder? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const OpportunitaMinOrderByAggregateInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? dataInizio; + + final _i2.SortOrder? dataFine; + + final _i2.SortOrder? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const OpportunitaOrderByWithAggregationInput({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataInizio; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? dataFine; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? form; + + final _i2.OpportunitaCountOrderByAggregateInput? $count; + + final _i2.OpportunitaMaxOrderByAggregateInput? $max; + + final _i2.OpportunitaMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class OpportunitaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const OpportunitaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereWithAggregatesInput, + Iterable<_i2.OpportunitaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.OpportunitaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.OpportunitaScalarWhereWithAggregatesInput, + Iterable<_i2.OpportunitaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataInizio; + + final _i1.PrismaUnion<_i2.DateTimeNullableWithAggregatesFilter, + _i1.PrismaUnion>? dataFine; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? form; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OpportunitaCountAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.$all, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataInizio; + + final bool? dataFine; + + final bool? form; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + '_all': $all, + }; +} + +class OpportunitaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const OpportunitaGroupByOutputTypeCountArgs({this.select}); + + final _i2.OpportunitaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OpportunitaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OpportunitaMinAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataInizio; + + final bool? dataFine; + + final bool? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const OpportunitaGroupByOutputTypeMinArgs({this.select}); + + final _i2.OpportunitaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OpportunitaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const OpportunitaMaxAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataInizio; + + final bool? dataFine; + + final bool? form; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + }; +} + +class OpportunitaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const OpportunitaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.OpportunitaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class OpportunitaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const OpportunitaGroupByOutputTypeSelect({ + this.uuid, + this.nome, + this.dataInizio, + this.dataFine, + this.form, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? nome; + + final bool? dataInizio; + + final bool? dataFine; + + final bool? form; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'dataInizio': dataInizio, + 'dataFine': dataFine, + 'form': form, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateOpportunita { + const AggregateOpportunita({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateOpportunita.fromJson(Map json) => AggregateOpportunita( + $count: json['_count'] is Map + ? _i2.OpportunitaCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.OpportunitaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.OpportunitaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.OpportunitaCountAggregateOutputType? $count; + + final _i2.OpportunitaMinAggregateOutputType? $min; + + final _i2.OpportunitaMaxAggregateOutputType? $max; +} + +class AggregateOpportunitaCountArgs + implements _i1.JsonConvertible> { + const AggregateOpportunitaCountArgs({this.select}); + + final _i2.OpportunitaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOpportunitaMinArgs + implements _i1.JsonConvertible> { + const AggregateOpportunitaMinArgs({this.select}); + + final _i2.OpportunitaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOpportunitaMaxArgs + implements _i1.JsonConvertible> { + const AggregateOpportunitaMaxArgs({this.select}); + + final _i2.OpportunitaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateOpportunitaSelect + implements _i1.JsonConvertible> { + const AggregateOpportunitaSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum StatoOpportunitaScalar implements _i1.PrismaEnum, _i1.Reference { + uuid('uuid', 'StatoOpportunita'), + nome('nome', 'StatoOpportunita'), + tipoStato<_i3.TipoStato>('tipoStato', 'StatoOpportunita'), + ordine('ordine', 'StatoOpportunita'), + colore('colore', 'StatoOpportunita'), + opportunitaUuid('opportunitaUuid', 'StatoOpportunita'); + + const StatoOpportunitaScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class LeadCreateWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateWithoutStatoOpportunitaInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + required this.opportunita, + required this.soggetto, + this.domicilio, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final String? uuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OpportunitaCreateNestedOneWithoutLeadsInput opportunita; + + final _i2.SoggettoCreateNestedOneWithoutLeadsInput soggetto; + + final _i2.DomicilioCreateNestedOneWithoutLeadsInput? domicilio; + + final _i2.UtenteCreateNestedOneWithoutLeadsGestitiInput? utente; + + final _i2.NegozioCreateNestedOneWithoutLeadsInput? negozio; + + final _i2.UtenteCreateNestedOneWithoutLeadsAssegnatiInput? agente; + + final _i2.OrdineCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedCreateWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateWithoutStatoOpportunitaInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + final _i2.OrdineUncheckedCreateNestedManyWithoutLeadInput? ordine; + + final _i2.HistoryUncheckedCreateNestedManyWithoutLeadInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadCreateOrConnectWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateOrConnectWithoutStatoOpportunitaInput({ + required this.where, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutStatoOpportunitaInput, + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class LeadCreateManyStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateManyStatoOpportunitaInput({ + this.uuid, + required this.opportunitaUuid, + required this.soggettoUuid, + this.domicilioUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final String? uuid; + + final String opportunitaUuid; + + final String soggettoUuid; + + final _i1.PrismaUnion? domicilioUuid; + + final _i1.PrismaUnion? utenteUuid; + + final _i1.PrismaUnion? negozioCodice; + + final _i1.PrismaUnion? agenteUuid; + + final _i1.PrismaUnion? appuntamenti; + + final _i1.PrismaUnion? form; + + final _i1.PrismaUnion? dataInserimento; + + final _i1.PrismaUnion? dataScadenza; + + final _i1.PrismaUnion? dataAppuntamento; + + final _i1.PrismaUnion? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadCreateManyStatoOpportunitaInputEnvelope + implements _i1.JsonConvertible> { + const LeadCreateManyStatoOpportunitaInputEnvelope({ + required this.data, + this.skipDuplicates, + }); + + final _i1.PrismaUnion<_i2.LeadCreateManyStatoOpportunitaInput, + Iterable<_i2.LeadCreateManyStatoOpportunitaInput>> data; + + final bool? skipDuplicates; + + @override + Map toJson() => { + 'data': data, + 'skipDuplicates': skipDuplicates, + }; +} + +class LeadCreateNestedManyWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadCreateNestedManyWithoutStatoOpportunitaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutStatoOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutStatoOpportunitaInput>, + _i1.PrismaUnion< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput, + Iterable< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput>>? + connectOrCreate; + + final _i2.LeadCreateManyStatoOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoOpportunitaCreateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCreateInput({ + this.uuid, + required this.nome, + this.tipoStato, + this.ordine, + required this.colore, + required this.opportunitaUuid, + this.leads, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? tipoStato; + + final _i1.PrismaUnion? ordine; + + final String colore; + + final String opportunitaUuid; + + final _i2.LeadCreateNestedManyWithoutStatoOpportunitaInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class LeadUncheckedCreateNestedManyWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedCreateNestedManyWithoutStatoOpportunitaInput({ + this.create, + this.connectOrCreate, + this.createMany, + this.connect, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutStatoOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutStatoOpportunitaInput>, + _i1.PrismaUnion< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput, + Iterable< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput>>? + connectOrCreate; + + final _i2.LeadCreateManyStatoOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'createMany': createMany, + 'connect': connect, + }; +} + +class StatoOpportunitaUncheckedCreateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUncheckedCreateInput({ + this.uuid, + required this.nome, + this.tipoStato, + this.ordine, + required this.colore, + required this.opportunitaUuid, + this.leads, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? tipoStato; + + final _i1.PrismaUnion? ordine; + + final String colore; + + final String opportunitaUuid; + + final _i2.LeadUncheckedCreateNestedManyWithoutStatoOpportunitaInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class StatoOpportunitaCreateManyInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCreateManyInput({ + this.uuid, + required this.nome, + this.tipoStato, + this.ordine, + required this.colore, + required this.opportunitaUuid, + }); + + final String? uuid; + + final String nome; + + final _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>? tipoStato; + + final _i1.PrismaUnion? ordine; + + final String colore; + + final String opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class LeadUpdateWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateWithoutStatoOpportunitaInput({ + this.uuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.opportunita, + this.soggetto, + this.domicilio, + this.utente, + this.negozio, + this.agente, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OpportunitaUpdateOneRequiredWithoutLeadsNestedInput? opportunita; + + final _i2.SoggettoUpdateOneRequiredWithoutLeadsNestedInput? soggetto; + + final _i2.DomicilioUpdateOneWithoutLeadsNestedInput? domicilio; + + final _i2.UtenteUpdateOneWithoutLeadsGestitiNestedInput? utente; + + final _i2.NegozioUpdateOneWithoutLeadsNestedInput? negozio; + + final _i2.UtenteUpdateOneWithoutLeadsAssegnatiNestedInput? agente; + + final _i2.OrdineUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'opportunita': opportunita, + 'soggetto': soggetto, + 'domicilio': domicilio, + 'utente': utente, + 'negozio': negozio, + 'agente': agente, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUncheckedUpdateWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateWithoutStatoOpportunitaInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + this.ordine, + this.history, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + final _i2.OrdineUncheckedUpdateManyWithoutLeadNestedInput? ordine; + + final _i2.HistoryUncheckedUpdateManyWithoutLeadNestedInput? history; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + 'ordine': ordine, + 'history': history, + }; +} + +class LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput({ + required this.where, + required this.update, + required this.create, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutStatoOpportunitaInput, + _i2.LeadUncheckedUpdateWithoutStatoOpportunitaInput> update; + + final _i1.PrismaUnion<_i2.LeadCreateWithoutStatoOpportunitaInput, + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput> create; + + @override + Map toJson() => { + 'where': where, + 'update': update, + 'create': create, + }; +} + +class LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput({ + required this.where, + required this.data, + }); + + final _i2.LeadWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateWithoutStatoOpportunitaInput, + _i2.LeadUncheckedUpdateWithoutStatoOpportunitaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUncheckedUpdateManyWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutStatoOpportunitaInput({ + this.uuid, + this.opportunitaUuid, + this.soggettoUuid, + this.domicilioUuid, + this.utenteUuid, + this.negozioCodice, + this.agenteUuid, + this.appuntamenti, + this.form, + this.dataInserimento, + this.dataScadenza, + this.dataAppuntamento, + this.nota, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i1.PrismaUnion? + soggettoUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? domicilioUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? negozioCodice; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? agenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? appuntamenti; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? form; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataInserimento; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataScadenza; + + final _i1.PrismaUnion< + DateTime, + _i1.PrismaUnion<_i2.NullableDateTimeFieldUpdateOperationsInput, + _i1.PrismaNull>>? dataAppuntamento; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? nota; + + @override + Map toJson() => { + 'uuid': uuid, + 'opportunitaUuid': opportunitaUuid, + 'soggettoUuid': soggettoUuid, + 'domicilioUuid': domicilioUuid, + 'utenteUuid': utenteUuid, + 'negozioCodice': negozioCodice, + 'agenteUuid': agenteUuid, + 'appuntamenti': appuntamenti, + 'form': form, + 'dataInserimento': dataInserimento, + 'dataScadenza': dataScadenza, + 'dataAppuntamento': dataAppuntamento, + 'nota': nota, + }; +} + +class LeadUpdateManyWithWhereWithoutStatoOpportunitaInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithWhereWithoutStatoOpportunitaInput({ + required this.where, + required this.data, + }); + + final _i2.LeadScalarWhereInput where; + + final _i1.PrismaUnion<_i2.LeadUpdateManyMutationInput, + _i2.LeadUncheckedUpdateManyWithoutStatoOpportunitaInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class LeadUpdateManyWithoutStatoOpportunitaNestedInput + implements _i1.JsonConvertible> { + const LeadUpdateManyWithoutStatoOpportunitaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutStatoOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutStatoOpportunitaInput>, + _i1.PrismaUnion< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput, + Iterable< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput>>? + upsert; + + final _i2.LeadCreateManyStatoOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput>>? + update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutStatoOpportunitaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoOpportunitaUpdateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpdateInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i2.LeadUpdateManyWithoutStatoOpportunitaNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class LeadUncheckedUpdateManyWithoutStatoOpportunitaNestedInput + implements _i1.JsonConvertible> { + const LeadUncheckedUpdateManyWithoutStatoOpportunitaNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.createMany, + this.set, + this.disconnect, + this.delete, + this.connect, + this.update, + this.updateMany, + this.deleteMany, + }); + + final _i1.PrismaUnion< + _i2.LeadCreateWithoutStatoOpportunitaInput, + _i1.PrismaUnion< + Iterable<_i2.LeadCreateWithoutStatoOpportunitaInput>, + _i1.PrismaUnion< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput, + Iterable< + _i2.LeadUncheckedCreateWithoutStatoOpportunitaInput>>>>? + create; + + final _i1.PrismaUnion<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput, + Iterable<_i2.LeadCreateOrConnectWithoutStatoOpportunitaInput>>? + connectOrCreate; + + final _i1.PrismaUnion< + _i2.LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpsertWithWhereUniqueWithoutStatoOpportunitaInput>>? + upsert; + + final _i2.LeadCreateManyStatoOpportunitaInputEnvelope? createMany; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? set; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? disconnect; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? delete; + + final _i1.PrismaUnion<_i2.LeadWhereUniqueInput, + Iterable<_i2.LeadWhereUniqueInput>>? connect; + + final _i1.PrismaUnion< + _i2.LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpdateWithWhereUniqueWithoutStatoOpportunitaInput>>? + update; + + final _i1.PrismaUnion<_i2.LeadUpdateManyWithWhereWithoutStatoOpportunitaInput, + Iterable<_i2.LeadUpdateManyWithWhereWithoutStatoOpportunitaInput>>? + updateMany; + + final _i1.PrismaUnion<_i2.LeadScalarWhereInput, + Iterable<_i2.LeadScalarWhereInput>>? deleteMany; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'createMany': createMany, + 'set': set, + 'disconnect': disconnect, + 'delete': delete, + 'connect': connect, + 'update': update, + 'updateMany': updateMany, + 'deleteMany': deleteMany, + }; +} + +class StatoOpportunitaUncheckedUpdateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUncheckedUpdateInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.leads, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + final _i2.LeadUncheckedUpdateManyWithoutStatoOpportunitaNestedInput? leads; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + 'leads': leads, + }; +} + +class StatoOpportunitaUpdateManyMutationInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUpdateManyMutationInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const StatoOpportunitaUncheckedUpdateManyInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? nome; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NullableEnumTipoStatoFieldUpdateOperationsInput, + _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion< + int, + _i1.PrismaUnion<_i2.NullableIntFieldUpdateOperationsInput, + _i1.PrismaNull>>? ordine; + + final _i1.PrismaUnion? colore; + + final _i1.PrismaUnion? + opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaCountAggregateOutputType { + const StatoOpportunitaCountAggregateOutputType({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.$all, + }); + + factory StatoOpportunitaCountAggregateOutputType.fromJson(Map json) => + StatoOpportunitaCountAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + tipoStato: json['tipoStato'], + ordine: json['ordine'], + colore: json['colore'], + opportunitaUuid: json['opportunitaUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? nome; + + final int? tipoStato; + + final int? ordine; + + final int? colore; + + final int? opportunitaUuid; + + final int? $all; +} + +class StatoOpportunitaAvgAggregateOutputType { + const StatoOpportunitaAvgAggregateOutputType({this.ordine}); + + factory StatoOpportunitaAvgAggregateOutputType.fromJson(Map json) => + StatoOpportunitaAvgAggregateOutputType(ordine: json['ordine']); + + final double? ordine; +} + +class StatoOpportunitaSumAggregateOutputType { + const StatoOpportunitaSumAggregateOutputType({this.ordine}); + + factory StatoOpportunitaSumAggregateOutputType.fromJson(Map json) => + StatoOpportunitaSumAggregateOutputType(ordine: json['ordine']); + + final int? ordine; +} + +class StatoOpportunitaMinAggregateOutputType { + const StatoOpportunitaMinAggregateOutputType({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + factory StatoOpportunitaMinAggregateOutputType.fromJson(Map json) => + StatoOpportunitaMinAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + opportunitaUuid: json['opportunitaUuid'], + ); + + final String? uuid; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final String? opportunitaUuid; +} + +class StatoOpportunitaMaxAggregateOutputType { + const StatoOpportunitaMaxAggregateOutputType({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + factory StatoOpportunitaMaxAggregateOutputType.fromJson(Map json) => + StatoOpportunitaMaxAggregateOutputType( + uuid: json['uuid'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + opportunitaUuid: json['opportunitaUuid'], + ); + + final String? uuid; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final String? opportunitaUuid; +} + +class StatoOpportunitaGroupByOutputType { + const StatoOpportunitaGroupByOutputType({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory StatoOpportunitaGroupByOutputType.fromJson(Map json) => + StatoOpportunitaGroupByOutputType( + uuid: json['uuid'], + nome: json['nome'], + tipoStato: json['tipoStato'] != null + ? _i3.TipoStato.values + .firstWhere((e) => e.name == json['tipoStato']) + : null, + ordine: json['ordine'], + colore: json['colore'], + opportunitaUuid: json['opportunitaUuid'], + $count: json['_count'] is Map + ? _i2.StatoOpportunitaCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.StatoOpportunitaAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.StatoOpportunitaSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.StatoOpportunitaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoOpportunitaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final String? nome; + + final _i3.TipoStato? tipoStato; + + final int? ordine; + + final String? colore; + + final String? opportunitaUuid; + + final _i2.StatoOpportunitaCountAggregateOutputType? $count; + + final _i2.StatoOpportunitaAvgAggregateOutputType? $avg; + + final _i2.StatoOpportunitaSumAggregateOutputType? $sum; + + final _i2.StatoOpportunitaMinAggregateOutputType? $min; + + final _i2.StatoOpportunitaMaxAggregateOutputType? $max; +} + +class StatoOpportunitaCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaCountOrderByAggregateInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaAvgOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaAvgOrderByAggregateInput({this.ordine}); + + final _i2.SortOrder? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOpportunitaMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaMaxOrderByAggregateInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaMinOrderByAggregateInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i2.SortOrder? tipoStato; + + final _i2.SortOrder? ordine; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaSumOrderByAggregateInput + implements _i1.JsonConvertible> { + const StatoOpportunitaSumOrderByAggregateInput({this.ordine}); + + final _i2.SortOrder? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOpportunitaOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const StatoOpportunitaOrderByWithAggregationInput({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.$count, + this.$avg, + this.$max, + this.$min, + this.$sum, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? nome; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? tipoStato; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? ordine; + + final _i2.SortOrder? colore; + + final _i2.SortOrder? opportunitaUuid; + + final _i2.StatoOpportunitaCountOrderByAggregateInput? $count; + + final _i2.StatoOpportunitaAvgOrderByAggregateInput? $avg; + + final _i2.StatoOpportunitaMaxOrderByAggregateInput? $max; + + final _i2.StatoOpportunitaMinOrderByAggregateInput? $min; + + final _i2.StatoOpportunitaSumOrderByAggregateInput? $sum; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + '_count': $count, + '_avg': $avg, + '_max': $max, + '_min': $min, + '_sum': $sum, + }; +} + +class NestedEnumTipoStatoNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const NestedEnumTipoStatoNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoStato, + _i1.PrismaUnion<_i1.Reference<_i3.TipoStato>, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NestedEnumTipoStatoNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedEnumTipoStatoNullableFilter? $min; + + final _i2.NestedEnumTipoStatoNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class EnumTipoStatoNullableWithAggregatesFilter + implements _i1.JsonConvertible> { + const EnumTipoStatoNullableWithAggregatesFilter({ + this.equals, + this.$in, + this.notIn, + this.not, + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion<_i3.TipoStato, + _i1.PrismaUnion<_i1.Reference<_i3.TipoStato>, _i1.PrismaNull>>? equals; + + final _i1.PrismaUnion, _i1.PrismaNull>? $in; + + final _i1.PrismaUnion, _i1.PrismaNull>? notIn; + + final _i1.PrismaUnion< + _i3.TipoStato, + _i1.PrismaUnion<_i2.NestedEnumTipoStatoNullableWithAggregatesFilter, + _i1.PrismaNull>>? not; + + final _i2.NestedIntNullableFilter? $count; + + final _i2.NestedEnumTipoStatoNullableFilter? $min; + + final _i2.NestedEnumTipoStatoNullableFilter? $max; + + @override + Map toJson() => { + 'equals': equals, + 'in': $in, + 'notIn': notIn, + 'not': not, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class StatoOpportunitaScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const StatoOpportunitaScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final _i1.PrismaUnion<_i2.StatoOpportunitaScalarWhereWithAggregatesInput, + Iterable<_i2.StatoOpportunitaScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.StatoOpportunitaScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.StatoOpportunitaScalarWhereWithAggregatesInput, + Iterable<_i2.StatoOpportunitaScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? nome; + + final _i1.PrismaUnion<_i2.EnumTipoStatoNullableWithAggregatesFilter, + _i1.PrismaUnion<_i3.TipoStato, _i1.PrismaNull>>? tipoStato; + + final _i1.PrismaUnion<_i2.IntNullableWithAggregatesFilter, + _i1.PrismaUnion>? ordine; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? colore; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? + opportunitaUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaCountAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.$all, + }); + + final bool? uuid; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? opportunitaUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + '_all': $all, + }; +} + +class StatoOpportunitaGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeCountArgs({this.select}); + + final _i2.StatoOpportunitaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaAvgAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaAvgAggregateOutputTypeSelect({this.ordine}); + + final bool? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOpportunitaGroupByOutputTypeAvgArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeAvgArgs({this.select}); + + final _i2.StatoOpportunitaAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaSumAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaSumAggregateOutputTypeSelect({this.ordine}); + + final bool? ordine; + + @override + Map toJson() => {'ordine': ordine}; +} + +class StatoOpportunitaGroupByOutputTypeSumArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeSumArgs({this.select}); + + final _i2.StatoOpportunitaSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaMinAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeMinArgs({this.select}); + + final _i2.StatoOpportunitaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaMaxAggregateOutputTypeSelect({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + }); + + final bool? uuid; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? opportunitaUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + }; +} + +class StatoOpportunitaGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeMaxArgs({this.select}); + + final _i2.StatoOpportunitaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class StatoOpportunitaGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const StatoOpportunitaGroupByOutputTypeSelect({ + this.uuid, + this.nome, + this.tipoStato, + this.ordine, + this.colore, + this.opportunitaUuid, + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? nome; + + final bool? tipoStato; + + final bool? ordine; + + final bool? colore; + + final bool? opportunitaUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $avg; + + final _i1.PrismaUnion? + $sum; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'nome': nome, + 'tipoStato': tipoStato, + 'ordine': ordine, + 'colore': colore, + 'opportunitaUuid': opportunitaUuid, + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class AggregateStatoOpportunita { + const AggregateStatoOpportunita({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + factory AggregateStatoOpportunita.fromJson(Map json) => + AggregateStatoOpportunita( + $count: json['_count'] is Map + ? _i2.StatoOpportunitaCountAggregateOutputType.fromJson( + json['_count']) + : null, + $avg: json['_avg'] is Map + ? _i2.StatoOpportunitaAvgAggregateOutputType.fromJson(json['_avg']) + : null, + $sum: json['_sum'] is Map + ? _i2.StatoOpportunitaSumAggregateOutputType.fromJson(json['_sum']) + : null, + $min: json['_min'] is Map + ? _i2.StatoOpportunitaMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.StatoOpportunitaMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.StatoOpportunitaCountAggregateOutputType? $count; + + final _i2.StatoOpportunitaAvgAggregateOutputType? $avg; + + final _i2.StatoOpportunitaSumAggregateOutputType? $sum; + + final _i2.StatoOpportunitaMinAggregateOutputType? $min; + + final _i2.StatoOpportunitaMaxAggregateOutputType? $max; +} + +class AggregateStatoOpportunitaCountArgs + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaCountArgs({this.select}); + + final _i2.StatoOpportunitaCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOpportunitaAvgArgs + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaAvgArgs({this.select}); + + final _i2.StatoOpportunitaAvgAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOpportunitaSumArgs + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaSumArgs({this.select}); + + final _i2.StatoOpportunitaSumAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOpportunitaMinArgs + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaMinArgs({this.select}); + + final _i2.StatoOpportunitaMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOpportunitaMaxArgs + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaMaxArgs({this.select}); + + final _i2.StatoOpportunitaMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateStatoOpportunitaSelect + implements _i1.JsonConvertible> { + const AggregateStatoOpportunitaSelect({ + this.$count, + this.$avg, + this.$sum, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $avg; + + final _i1.PrismaUnion? $sum; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_avg': $avg, + '_sum': $sum, + '_min': $min, + '_max': $max, + }; +} + +class HistoryCreateInput implements _i1.JsonConvertible> { + const HistoryCreateInput({ + this.uuid, + required this.timestamp, + required this.event, + this.comment, + this.attachment, + required this.utente, + this.lead, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i2.HistoryCommentCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentCreateNestedOneWithoutHistoryInput? attachment; + + final _i2.UtenteCreateNestedOneWithoutHistoryInput utente; + + final _i2.LeadCreateNestedOneWithoutHistoryInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedCreateInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + final _i1.PrismaUnion? leadUuid; + + final _i2.HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput? comment; + + final _i2.HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryCreateManyInput + implements _i1.JsonConvertible> { + const HistoryCreateManyInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + this.leadUuid, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + final _i1.PrismaUnion? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryUpdateInput implements _i1.JsonConvertible> { + const HistoryUpdateInput({ + this.uuid, + this.timestamp, + this.event, + this.comment, + this.attachment, + this.utente, + this.lead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i2.HistoryCommentUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUpdateOneWithoutHistoryNestedInput? attachment; + + final _i2.UtenteUpdateOneRequiredWithoutHistoryNestedInput? utente; + + final _i2.LeadUpdateOneWithoutHistoryNestedInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedUpdateInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + this.attachment, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i2.HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + 'attachment': attachment, + }; +} + +class HistoryUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateManyInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryCountAggregateOutputType { + const HistoryCountAggregateOutputType({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.$all, + }); + + factory HistoryCountAggregateOutputType.fromJson(Map json) => + HistoryCountAggregateOutputType( + uuid: json['uuid'], + timestamp: json['timestamp'], + event: json['event'], + utenteUuid: json['utenteUuid'], + leadUuid: json['leadUuid'], + $all: json['_all'], + ); + + final int? uuid; + + final int? timestamp; + + final int? event; + + final int? utenteUuid; + + final int? leadUuid; + + final int? $all; +} + +class HistoryMinAggregateOutputType { + const HistoryMinAggregateOutputType({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + factory HistoryMinAggregateOutputType.fromJson(Map json) => + HistoryMinAggregateOutputType( + uuid: json['uuid'], + timestamp: json['timestamp'], + event: json['event'], + utenteUuid: json['utenteUuid'], + leadUuid: json['leadUuid'], + ); + + final String? uuid; + + final DateTime? timestamp; + + final String? event; + + final String? utenteUuid; + + final String? leadUuid; +} + +class HistoryMaxAggregateOutputType { + const HistoryMaxAggregateOutputType({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + factory HistoryMaxAggregateOutputType.fromJson(Map json) => + HistoryMaxAggregateOutputType( + uuid: json['uuid'], + timestamp: json['timestamp'], + event: json['event'], + utenteUuid: json['utenteUuid'], + leadUuid: json['leadUuid'], + ); + + final String? uuid; + + final DateTime? timestamp; + + final String? event; + + final String? utenteUuid; + + final String? leadUuid; +} + +class HistoryGroupByOutputType { + const HistoryGroupByOutputType({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.$count, + this.$min, + this.$max, + }); + + factory HistoryGroupByOutputType.fromJson(Map json) => + HistoryGroupByOutputType( + uuid: json['uuid'], + timestamp: json['timestamp'], + event: json['event'], + utenteUuid: json['utenteUuid'], + leadUuid: json['leadUuid'], + $count: json['_count'] is Map + ? _i2.HistoryCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? uuid; + + final DateTime? timestamp; + + final String? event; + + final String? utenteUuid; + + final String? leadUuid; + + final _i2.HistoryCountAggregateOutputType? $count; + + final _i2.HistoryMinAggregateOutputType? $min; + + final _i2.HistoryMaxAggregateOutputType? $max; +} + +class HistoryCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryCountOrderByAggregateInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? timestamp; + + final _i2.SortOrder? event; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryMaxOrderByAggregateInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? timestamp; + + final _i2.SortOrder? event; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryMinOrderByAggregateInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? timestamp; + + final _i2.SortOrder? event; + + final _i2.SortOrder? utenteUuid; + + final _i2.SortOrder? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const HistoryOrderByWithAggregationInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? uuid; + + final _i2.SortOrder? timestamp; + + final _i2.SortOrder? event; + + final _i2.SortOrder? utenteUuid; + + final _i1.PrismaUnion<_i2.SortOrder, _i2.SortOrderInput>? leadUuid; + + final _i2.HistoryCountOrderByAggregateInput? $count; + + final _i2.HistoryMaxOrderByAggregateInput? $max; + + final _i2.HistoryMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class HistoryScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const HistoryScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final _i1.PrismaUnion<_i2.HistoryScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.HistoryScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? uuid; + + final _i1.PrismaUnion<_i2.DateTimeWithAggregatesFilter, DateTime>? timestamp; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? event; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? utenteUuid; + + final _i1.PrismaUnion<_i2.StringNullableWithAggregatesFilter, + _i1.PrismaUnion>? leadUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryCountAggregateOutputTypeSelect({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.$all, + }); + + final bool? uuid; + + final bool? timestamp; + + final bool? event; + + final bool? utenteUuid; + + final bool? leadUuid; + + final bool? $all; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + '_all': $all, + }; +} + +class HistoryGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const HistoryGroupByOutputTypeCountArgs({this.select}); + + final _i2.HistoryCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryMinAggregateOutputTypeSelect({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final bool? uuid; + + final bool? timestamp; + + final bool? event; + + final bool? utenteUuid; + + final bool? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const HistoryGroupByOutputTypeMinArgs({this.select}); + + final _i2.HistoryMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryMaxAggregateOutputTypeSelect({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + }); + + final bool? uuid; + + final bool? timestamp; + + final bool? event; + + final bool? utenteUuid; + + final bool? leadUuid; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + }; +} + +class HistoryGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const HistoryGroupByOutputTypeMaxArgs({this.select}); + + final _i2.HistoryMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryGroupByOutputTypeSelect({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? uuid; + + final bool? timestamp; + + final bool? event; + + final bool? utenteUuid; + + final bool? leadUuid; + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateHistory { + const AggregateHistory({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateHistory.fromJson(Map json) => AggregateHistory( + $count: json['_count'] is Map + ? _i2.HistoryCountAggregateOutputType.fromJson(json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.HistoryCountAggregateOutputType? $count; + + final _i2.HistoryMinAggregateOutputType? $min; + + final _i2.HistoryMaxAggregateOutputType? $max; +} + +class AggregateHistoryCountArgs + implements _i1.JsonConvertible> { + const AggregateHistoryCountArgs({this.select}); + + final _i2.HistoryCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryMinArgs + implements _i1.JsonConvertible> { + const AggregateHistoryMinArgs({this.select}); + + final _i2.HistoryMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryMaxArgs + implements _i1.JsonConvertible> { + const AggregateHistoryMaxArgs({this.select}); + + final _i2.HistoryMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistorySelect + implements _i1.JsonConvertible> { + const AggregateHistorySelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum HistoryCommentScalar implements _i1.PrismaEnum, _i1.Reference { + comment('comment', 'HistoryComment'), + historyUuid('historyUuid', 'HistoryComment'); + + const HistoryCommentScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class HistoryCreateWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryCreateWithoutCommentInput({ + this.uuid, + required this.timestamp, + required this.event, + this.attachment, + required this.utente, + this.lead, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i2.HistoryAttachmentCreateNestedOneWithoutHistoryInput? attachment; + + final _i2.UtenteCreateNestedOneWithoutHistoryInput utente; + + final _i2.LeadCreateNestedOneWithoutHistoryInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedCreateWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateWithoutCommentInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + this.leadUuid, + this.attachment, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + final _i1.PrismaUnion? leadUuid; + + final _i2.HistoryAttachmentUncheckedCreateNestedOneWithoutHistoryInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'attachment': attachment, + }; +} + +class HistoryCreateOrConnectWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryCreateOrConnectWithoutCommentInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutCommentInput, + _i2.HistoryUncheckedCreateWithoutCommentInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryCreateNestedOneWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryCreateNestedOneWithoutCommentInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutCommentInput, + _i2.HistoryUncheckedCreateWithoutCommentInput>? create; + + final _i2.HistoryCreateOrConnectWithoutCommentInput? connectOrCreate; + + final _i2.HistoryWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryCommentCreateInput + implements _i1.JsonConvertible> { + const HistoryCommentCreateInput({ + required this.comment, + required this.history, + }); + + final String comment; + + final _i2.HistoryCreateNestedOneWithoutCommentInput history; + + @override + Map toJson() => { + 'comment': comment, + 'History': history, + }; +} + +class HistoryCommentUncheckedCreateInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedCreateInput({ + required this.comment, + required this.historyUuid, + }); + + final String comment; + + final String historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentCreateManyInput + implements _i1.JsonConvertible> { + const HistoryCommentCreateManyInput({ + required this.comment, + required this.historyUuid, + }); + + final String comment; + + final String historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryUpdateWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithoutCommentInput({ + this.uuid, + this.timestamp, + this.event, + this.attachment, + this.utente, + this.lead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i2.HistoryAttachmentUpdateOneWithoutHistoryNestedInput? attachment; + + final _i2.UtenteUpdateOneRequiredWithoutHistoryNestedInput? utente; + + final _i2.LeadUpdateOneWithoutHistoryNestedInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'attachment': attachment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedUpdateWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateWithoutCommentInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.attachment, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i2.HistoryAttachmentUncheckedUpdateOneWithoutHistoryNestedInput? + attachment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'attachment': attachment, + }; +} + +class HistoryUpsertWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryUpsertWithoutCommentInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutCommentInput, + _i2.HistoryUncheckedUpdateWithoutCommentInput> update; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutCommentInput, + _i2.HistoryUncheckedCreateWithoutCommentInput> create; + + final _i2.HistoryWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class HistoryUpdateToOneWithWhereWithoutCommentInput + implements _i1.JsonConvertible> { + const HistoryUpdateToOneWithWhereWithoutCommentInput({ + this.where, + required this.data, + }); + + final _i2.HistoryWhereInput? where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutCommentInput, + _i2.HistoryUncheckedUpdateWithoutCommentInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryUpdateOneRequiredWithoutCommentNestedInput + implements _i1.JsonConvertible> { + const HistoryUpdateOneRequiredWithoutCommentNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutCommentInput, + _i2.HistoryUncheckedCreateWithoutCommentInput>? create; + + final _i2.HistoryCreateOrConnectWithoutCommentInput? connectOrCreate; + + final _i2.HistoryUpsertWithoutCommentInput? upsert; + + final _i2.HistoryWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryUpdateToOneWithWhereWithoutCommentInput, + _i1.PrismaUnion<_i2.HistoryUpdateWithoutCommentInput, + _i2.HistoryUncheckedUpdateWithoutCommentInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class HistoryCommentUpdateInput + implements _i1.JsonConvertible> { + const HistoryCommentUpdateInput({ + this.comment, + this.history, + }); + + final _i1.PrismaUnion? comment; + + final _i2.HistoryUpdateOneRequiredWithoutCommentNestedInput? history; + + @override + Map toJson() => { + 'comment': comment, + 'History': history, + }; +} + +class HistoryCommentUncheckedUpdateInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedUpdateInput({ + this.comment, + this.historyUuid, + }); + + final _i1.PrismaUnion? comment; + + final _i1.PrismaUnion? + historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentUpdateManyMutationInput + implements _i1.JsonConvertible> { + const HistoryCommentUpdateManyMutationInput({this.comment}); + + final _i1.PrismaUnion? comment; + + @override + Map toJson() => {'comment': comment}; +} + +class HistoryCommentUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const HistoryCommentUncheckedUpdateManyInput({ + this.comment, + this.historyUuid, + }); + + final _i1.PrismaUnion? comment; + + final _i1.PrismaUnion? + historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentCountAggregateOutputType { + const HistoryCommentCountAggregateOutputType({ + this.comment, + this.historyUuid, + this.$all, + }); + + factory HistoryCommentCountAggregateOutputType.fromJson(Map json) => + HistoryCommentCountAggregateOutputType( + comment: json['comment'], + historyUuid: json['historyUuid'], + $all: json['_all'], + ); + + final int? comment; + + final int? historyUuid; + + final int? $all; +} + +class HistoryCommentMinAggregateOutputType { + const HistoryCommentMinAggregateOutputType({ + this.comment, + this.historyUuid, + }); + + factory HistoryCommentMinAggregateOutputType.fromJson(Map json) => + HistoryCommentMinAggregateOutputType( + comment: json['comment'], + historyUuid: json['historyUuid'], + ); + + final String? comment; + + final String? historyUuid; +} + +class HistoryCommentMaxAggregateOutputType { + const HistoryCommentMaxAggregateOutputType({ + this.comment, + this.historyUuid, + }); + + factory HistoryCommentMaxAggregateOutputType.fromJson(Map json) => + HistoryCommentMaxAggregateOutputType( + comment: json['comment'], + historyUuid: json['historyUuid'], + ); + + final String? comment; + + final String? historyUuid; +} + +class HistoryCommentGroupByOutputType { + const HistoryCommentGroupByOutputType({ + this.comment, + this.historyUuid, + this.$count, + this.$min, + this.$max, + }); + + factory HistoryCommentGroupByOutputType.fromJson(Map json) => + HistoryCommentGroupByOutputType( + comment: json['comment'], + historyUuid: json['historyUuid'], + $count: json['_count'] is Map + ? _i2.HistoryCommentCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryCommentMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryCommentMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? comment; + + final String? historyUuid; + + final _i2.HistoryCommentCountAggregateOutputType? $count; + + final _i2.HistoryCommentMinAggregateOutputType? $min; + + final _i2.HistoryCommentMaxAggregateOutputType? $max; +} + +class HistoryCommentCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryCommentCountOrderByAggregateInput({ + this.comment, + this.historyUuid, + }); + + final _i2.SortOrder? comment; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryCommentMaxOrderByAggregateInput({ + this.comment, + this.historyUuid, + }); + + final _i2.SortOrder? comment; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryCommentMinOrderByAggregateInput({ + this.comment, + this.historyUuid, + }); + + final _i2.SortOrder? comment; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const HistoryCommentOrderByWithAggregationInput({ + this.comment, + this.historyUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? comment; + + final _i2.SortOrder? historyUuid; + + final _i2.HistoryCommentCountOrderByAggregateInput? $count; + + final _i2.HistoryCommentMaxOrderByAggregateInput? $max; + + final _i2.HistoryCommentMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class HistoryCommentScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const HistoryCommentScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.comment, + this.historyUuid, + }); + + final _i1.PrismaUnion<_i2.HistoryCommentScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryCommentScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.HistoryCommentScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryCommentScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryCommentScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? comment; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? historyUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryCommentCountAggregateOutputTypeSelect({ + this.comment, + this.historyUuid, + this.$all, + }); + + final bool? comment; + + final bool? historyUuid; + + final bool? $all; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + '_all': $all, + }; +} + +class HistoryCommentGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const HistoryCommentGroupByOutputTypeCountArgs({this.select}); + + final _i2.HistoryCommentCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryCommentMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryCommentMinAggregateOutputTypeSelect({ + this.comment, + this.historyUuid, + }); + + final bool? comment; + + final bool? historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const HistoryCommentGroupByOutputTypeMinArgs({this.select}); + + final _i2.HistoryCommentMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryCommentMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryCommentMaxAggregateOutputTypeSelect({ + this.comment, + this.historyUuid, + }); + + final bool? comment; + + final bool? historyUuid; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + }; +} + +class HistoryCommentGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const HistoryCommentGroupByOutputTypeMaxArgs({this.select}); + + final _i2.HistoryCommentMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryCommentGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryCommentGroupByOutputTypeSelect({ + this.comment, + this.historyUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? comment; + + final bool? historyUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + 'comment': comment, + 'historyUuid': historyUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateHistoryComment { + const AggregateHistoryComment({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateHistoryComment.fromJson(Map json) => AggregateHistoryComment( + $count: json['_count'] is Map + ? _i2.HistoryCommentCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryCommentMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryCommentMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.HistoryCommentCountAggregateOutputType? $count; + + final _i2.HistoryCommentMinAggregateOutputType? $min; + + final _i2.HistoryCommentMaxAggregateOutputType? $max; +} + +class AggregateHistoryCommentCountArgs + implements _i1.JsonConvertible> { + const AggregateHistoryCommentCountArgs({this.select}); + + final _i2.HistoryCommentCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryCommentMinArgs + implements _i1.JsonConvertible> { + const AggregateHistoryCommentMinArgs({this.select}); + + final _i2.HistoryCommentMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryCommentMaxArgs + implements _i1.JsonConvertible> { + const AggregateHistoryCommentMaxArgs({this.select}); + + final _i2.HistoryCommentMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryCommentSelect + implements _i1.JsonConvertible> { + const AggregateHistoryCommentSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +enum HistoryAttachmentScalar implements _i1.PrismaEnum, _i1.Reference { + url('url', 'HistoryAttachment'), + name$('name', 'HistoryAttachment'), + historyUuid('historyUuid', 'HistoryAttachment'); + + const HistoryAttachmentScalar( + this.name, + this.model, + ); + + @override + final String name; + + @override + final String model; +} + +class HistoryCreateWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryCreateWithoutAttachmentInput({ + this.uuid, + required this.timestamp, + required this.event, + this.comment, + required this.utente, + this.lead, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final _i2.HistoryCommentCreateNestedOneWithoutHistoryInput? comment; + + final _i2.UtenteCreateNestedOneWithoutHistoryInput utente; + + final _i2.LeadCreateNestedOneWithoutHistoryInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedCreateWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryUncheckedCreateWithoutAttachmentInput({ + this.uuid, + required this.timestamp, + required this.event, + required this.utenteUuid, + this.leadUuid, + this.comment, + }); + + final String? uuid; + + final DateTime timestamp; + + final String event; + + final String utenteUuid; + + final _i1.PrismaUnion? leadUuid; + + final _i2.HistoryCommentUncheckedCreateNestedOneWithoutHistoryInput? comment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + }; +} + +class HistoryCreateOrConnectWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryCreateOrConnectWithoutAttachmentInput({ + required this.where, + required this.create, + }); + + final _i2.HistoryWhereUniqueInput where; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutAttachmentInput, + _i2.HistoryUncheckedCreateWithoutAttachmentInput> create; + + @override + Map toJson() => { + 'where': where, + 'create': create, + }; +} + +class HistoryCreateNestedOneWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryCreateNestedOneWithoutAttachmentInput({ + this.create, + this.connectOrCreate, + this.connect, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutAttachmentInput, + _i2.HistoryUncheckedCreateWithoutAttachmentInput>? create; + + final _i2.HistoryCreateOrConnectWithoutAttachmentInput? connectOrCreate; + + final _i2.HistoryWhereUniqueInput? connect; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'connect': connect, + }; +} + +class HistoryAttachmentCreateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCreateInput({ + required this.url, + required this.name, + required this.history, + }); + + final String url; + + final String name; + + final _i2.HistoryCreateNestedOneWithoutAttachmentInput history; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'History': history, + }; +} + +class HistoryAttachmentUncheckedCreateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedCreateInput({ + required this.url, + required this.name, + required this.historyUuid, + }); + + final String url; + + final String name; + + final String historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentCreateManyInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCreateManyInput({ + required this.url, + required this.name, + required this.historyUuid, + }); + + final String url; + + final String name; + + final String historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryUpdateWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryUpdateWithoutAttachmentInput({ + this.uuid, + this.timestamp, + this.event, + this.comment, + this.utente, + this.lead, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i2.HistoryCommentUpdateOneWithoutHistoryNestedInput? comment; + + final _i2.UtenteUpdateOneRequiredWithoutHistoryNestedInput? utente; + + final _i2.LeadUpdateOneWithoutHistoryNestedInput? lead; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'comment': comment, + 'Utente': utente, + 'Lead': lead, + }; +} + +class HistoryUncheckedUpdateWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryUncheckedUpdateWithoutAttachmentInput({ + this.uuid, + this.timestamp, + this.event, + this.utenteUuid, + this.leadUuid, + this.comment, + }); + + final _i1.PrismaUnion? uuid; + + final _i1.PrismaUnion? + timestamp; + + final _i1.PrismaUnion? event; + + final _i1.PrismaUnion? + utenteUuid; + + final _i1.PrismaUnion< + String, + _i1.PrismaUnion<_i2.NullableStringFieldUpdateOperationsInput, + _i1.PrismaNull>>? leadUuid; + + final _i2.HistoryCommentUncheckedUpdateOneWithoutHistoryNestedInput? comment; + + @override + Map toJson() => { + 'uuid': uuid, + 'timestamp': timestamp, + 'event': event, + 'utenteUuid': utenteUuid, + 'leadUuid': leadUuid, + 'comment': comment, + }; +} + +class HistoryUpsertWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryUpsertWithoutAttachmentInput({ + required this.update, + required this.create, + this.where, + }); + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutAttachmentInput, + _i2.HistoryUncheckedUpdateWithoutAttachmentInput> update; + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutAttachmentInput, + _i2.HistoryUncheckedCreateWithoutAttachmentInput> create; + + final _i2.HistoryWhereInput? where; + + @override + Map toJson() => { + 'update': update, + 'create': create, + 'where': where, + }; +} + +class HistoryUpdateToOneWithWhereWithoutAttachmentInput + implements _i1.JsonConvertible> { + const HistoryUpdateToOneWithWhereWithoutAttachmentInput({ + this.where, + required this.data, + }); + + final _i2.HistoryWhereInput? where; + + final _i1.PrismaUnion<_i2.HistoryUpdateWithoutAttachmentInput, + _i2.HistoryUncheckedUpdateWithoutAttachmentInput> data; + + @override + Map toJson() => { + 'where': where, + 'data': data, + }; +} + +class HistoryUpdateOneRequiredWithoutAttachmentNestedInput + implements _i1.JsonConvertible> { + const HistoryUpdateOneRequiredWithoutAttachmentNestedInput({ + this.create, + this.connectOrCreate, + this.upsert, + this.connect, + this.update, + }); + + final _i1.PrismaUnion<_i2.HistoryCreateWithoutAttachmentInput, + _i2.HistoryUncheckedCreateWithoutAttachmentInput>? create; + + final _i2.HistoryCreateOrConnectWithoutAttachmentInput? connectOrCreate; + + final _i2.HistoryUpsertWithoutAttachmentInput? upsert; + + final _i2.HistoryWhereUniqueInput? connect; + + final _i1.PrismaUnion< + _i2.HistoryUpdateToOneWithWhereWithoutAttachmentInput, + _i1.PrismaUnion<_i2.HistoryUpdateWithoutAttachmentInput, + _i2.HistoryUncheckedUpdateWithoutAttachmentInput>>? update; + + @override + Map toJson() => { + 'create': create, + 'connectOrCreate': connectOrCreate, + 'upsert': upsert, + 'connect': connect, + 'update': update, + }; +} + +class HistoryAttachmentUpdateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpdateInput({ + this.url, + this.name, + this.history, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + final _i2.HistoryUpdateOneRequiredWithoutAttachmentNestedInput? history; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'History': history, + }; +} + +class HistoryAttachmentUncheckedUpdateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedUpdateInput({ + this.url, + this.name, + this.historyUuid, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + final _i1.PrismaUnion? + historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentUpdateManyMutationInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUpdateManyMutationInput({ + this.url, + this.name, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + @override + Map toJson() => { + 'url': url, + 'name': name, + }; +} + +class HistoryAttachmentUncheckedUpdateManyInput + implements _i1.JsonConvertible> { + const HistoryAttachmentUncheckedUpdateManyInput({ + this.url, + this.name, + this.historyUuid, + }); + + final _i1.PrismaUnion? url; + + final _i1.PrismaUnion? name; + + final _i1.PrismaUnion? + historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentCountAggregateOutputType { + const HistoryAttachmentCountAggregateOutputType({ + this.url, + this.name, + this.historyUuid, + this.$all, + }); + + factory HistoryAttachmentCountAggregateOutputType.fromJson(Map json) => + HistoryAttachmentCountAggregateOutputType( + url: json['url'], + name: json['name'], + historyUuid: json['historyUuid'], + $all: json['_all'], + ); + + final int? url; + + final int? name; + + final int? historyUuid; + + final int? $all; +} + +class HistoryAttachmentMinAggregateOutputType { + const HistoryAttachmentMinAggregateOutputType({ + this.url, + this.name, + this.historyUuid, + }); + + factory HistoryAttachmentMinAggregateOutputType.fromJson(Map json) => + HistoryAttachmentMinAggregateOutputType( + url: json['url'], + name: json['name'], + historyUuid: json['historyUuid'], + ); + + final String? url; + + final String? name; + + final String? historyUuid; +} + +class HistoryAttachmentMaxAggregateOutputType { + const HistoryAttachmentMaxAggregateOutputType({ + this.url, + this.name, + this.historyUuid, + }); + + factory HistoryAttachmentMaxAggregateOutputType.fromJson(Map json) => + HistoryAttachmentMaxAggregateOutputType( + url: json['url'], + name: json['name'], + historyUuid: json['historyUuid'], + ); + + final String? url; + + final String? name; + + final String? historyUuid; +} + +class HistoryAttachmentGroupByOutputType { + const HistoryAttachmentGroupByOutputType({ + this.url, + this.name, + this.historyUuid, + this.$count, + this.$min, + this.$max, + }); + + factory HistoryAttachmentGroupByOutputType.fromJson(Map json) => + HistoryAttachmentGroupByOutputType( + url: json['url'], + name: json['name'], + historyUuid: json['historyUuid'], + $count: json['_count'] is Map + ? _i2.HistoryAttachmentCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryAttachmentMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryAttachmentMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final String? url; + + final String? name; + + final String? historyUuid; + + final _i2.HistoryAttachmentCountAggregateOutputType? $count; + + final _i2.HistoryAttachmentMinAggregateOutputType? $min; + + final _i2.HistoryAttachmentMaxAggregateOutputType? $max; +} + +class HistoryAttachmentCountOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentCountOrderByAggregateInput({ + this.url, + this.name, + this.historyUuid, + }); + + final _i2.SortOrder? url; + + final _i2.SortOrder? name; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentMaxOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentMaxOrderByAggregateInput({ + this.url, + this.name, + this.historyUuid, + }); + + final _i2.SortOrder? url; + + final _i2.SortOrder? name; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentMinOrderByAggregateInput + implements _i1.JsonConvertible> { + const HistoryAttachmentMinOrderByAggregateInput({ + this.url, + this.name, + this.historyUuid, + }); + + final _i2.SortOrder? url; + + final _i2.SortOrder? name; + + final _i2.SortOrder? historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentOrderByWithAggregationInput + implements _i1.JsonConvertible> { + const HistoryAttachmentOrderByWithAggregationInput({ + this.url, + this.name, + this.historyUuid, + this.$count, + this.$max, + this.$min, + }); + + final _i2.SortOrder? url; + + final _i2.SortOrder? name; + + final _i2.SortOrder? historyUuid; + + final _i2.HistoryAttachmentCountOrderByAggregateInput? $count; + + final _i2.HistoryAttachmentMaxOrderByAggregateInput? $max; + + final _i2.HistoryAttachmentMinOrderByAggregateInput? $min; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + '_count': $count, + '_max': $max, + '_min': $min, + }; +} + +class HistoryAttachmentScalarWhereWithAggregatesInput + implements _i1.JsonConvertible> { + const HistoryAttachmentScalarWhereWithAggregatesInput({ + this.AND, + this.OR, + this.NOT, + this.url, + this.name, + this.historyUuid, + }); + + final _i1.PrismaUnion<_i2.HistoryAttachmentScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryAttachmentScalarWhereWithAggregatesInput>>? AND; + + final Iterable<_i2.HistoryAttachmentScalarWhereWithAggregatesInput>? OR; + + final _i1.PrismaUnion<_i2.HistoryAttachmentScalarWhereWithAggregatesInput, + Iterable<_i2.HistoryAttachmentScalarWhereWithAggregatesInput>>? NOT; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? url; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? name; + + final _i1.PrismaUnion<_i2.StringWithAggregatesFilter, String>? historyUuid; + + @override + Map toJson() => { + 'AND': AND, + 'OR': OR, + 'NOT': NOT, + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentCountAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryAttachmentCountAggregateOutputTypeSelect({ + this.url, + this.name, + this.historyUuid, + this.$all, + }); + + final bool? url; + + final bool? name; + + final bool? historyUuid; + + final bool? $all; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + '_all': $all, + }; +} + +class HistoryAttachmentGroupByOutputTypeCountArgs + implements _i1.JsonConvertible> { + const HistoryAttachmentGroupByOutputTypeCountArgs({this.select}); + + final _i2.HistoryAttachmentCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryAttachmentMinAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryAttachmentMinAggregateOutputTypeSelect({ + this.url, + this.name, + this.historyUuid, + }); + + final bool? url; + + final bool? name; + + final bool? historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentGroupByOutputTypeMinArgs + implements _i1.JsonConvertible> { + const HistoryAttachmentGroupByOutputTypeMinArgs({this.select}); + + final _i2.HistoryAttachmentMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryAttachmentMaxAggregateOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryAttachmentMaxAggregateOutputTypeSelect({ + this.url, + this.name, + this.historyUuid, + }); + + final bool? url; + + final bool? name; + + final bool? historyUuid; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + }; +} + +class HistoryAttachmentGroupByOutputTypeMaxArgs + implements _i1.JsonConvertible> { + const HistoryAttachmentGroupByOutputTypeMaxArgs({this.select}); + + final _i2.HistoryAttachmentMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class HistoryAttachmentGroupByOutputTypeSelect + implements _i1.JsonConvertible> { + const HistoryAttachmentGroupByOutputTypeSelect({ + this.url, + this.name, + this.historyUuid, + this.$count, + this.$min, + this.$max, + }); + + final bool? url; + + final bool? name; + + final bool? historyUuid; + + final _i1.PrismaUnion? + $count; + + final _i1.PrismaUnion? + $min; + + final _i1.PrismaUnion? + $max; + + @override + Map toJson() => { + 'url': url, + 'name': name, + 'historyUuid': historyUuid, + '_count': $count, + '_min': $min, + '_max': $max, + }; +} + +class AggregateHistoryAttachment { + const AggregateHistoryAttachment({ + this.$count, + this.$min, + this.$max, + }); + + factory AggregateHistoryAttachment.fromJson(Map json) => + AggregateHistoryAttachment( + $count: json['_count'] is Map + ? _i2.HistoryAttachmentCountAggregateOutputType.fromJson( + json['_count']) + : null, + $min: json['_min'] is Map + ? _i2.HistoryAttachmentMinAggregateOutputType.fromJson(json['_min']) + : null, + $max: json['_max'] is Map + ? _i2.HistoryAttachmentMaxAggregateOutputType.fromJson(json['_max']) + : null, + ); + + final _i2.HistoryAttachmentCountAggregateOutputType? $count; + + final _i2.HistoryAttachmentMinAggregateOutputType? $min; + + final _i2.HistoryAttachmentMaxAggregateOutputType? $max; +} + +class AggregateHistoryAttachmentCountArgs + implements _i1.JsonConvertible> { + const AggregateHistoryAttachmentCountArgs({this.select}); + + final _i2.HistoryAttachmentCountAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryAttachmentMinArgs + implements _i1.JsonConvertible> { + const AggregateHistoryAttachmentMinArgs({this.select}); + + final _i2.HistoryAttachmentMinAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryAttachmentMaxArgs + implements _i1.JsonConvertible> { + const AggregateHistoryAttachmentMaxArgs({this.select}); + + final _i2.HistoryAttachmentMaxAggregateOutputTypeSelect? select; + + @override + Map toJson() => {'select': select}; +} + +class AggregateHistoryAttachmentSelect + implements _i1.JsonConvertible> { + const AggregateHistoryAttachmentSelect({ + this.$count, + this.$min, + this.$max, + }); + + final _i1.PrismaUnion? $count; + + final _i1.PrismaUnion? $min; + + final _i1.PrismaUnion? $max; + + @override + Map toJson() => { + '_count': $count, + '_min': $min, + '_max': $max, + }; +} diff --git a/i340/prisma/schema.prisma b/i340/prisma/schema.prisma new file mode 100644 index 00000000..9d307233 --- /dev/null +++ b/i340/prisma/schema.prisma @@ -0,0 +1,723 @@ +generator client { + provider = "dart run orm" + previewFeatures = ["fullTextSearch", "fullTextIndex"] +} + +datasource db { + provider = "mysql" + url = env("DATABASE_URL") + relationMode = "prisma" +} + +model Soggetto { + uuid String @id @default(uuid()) + ragioneSociale String + iban String? + tipo TipoSoggetto + negozioPreferitoUuid String? + codiceFiscale String? @unique + note String? + soggettoBusinessInfo SoggettoBusinessInfo? + domicili Domicilio[] + praticheIntestate Pratica[] + contratti Contratto[] + indirizziEmail IndirizzoEmail[] + numeriTelefono NumeroTelefono[] + negozioPreferito Negozio? @relation(fields: [negozioPreferitoUuid], references: [codice]) + prodottiOrdinati Ordine[] + leads Lead[] + // TODO remove nullability after upgrade to Prisma > 4.x + privacy Privacy? + + @@index([negozioPreferitoUuid]) + @@index([tipo]) +} + +model Privacy { + uuid String @id @default(uuid()) + trattamento Boolean @default(true) + comunicazione Boolean @default(false) + profilazione Boolean @default(false) + soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade) + soggettoUuid String? @unique +} + +model SoggettoBusinessInfo { + uuid String @id @default(uuid()) + rea String? + partitaIVA String @unique + sdi String? + soggettoUuid String @unique + legaleRappresentante LegaleRappresentante? + referente Referente? + soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade) + + @@index([soggettoUuid]) +} + +model LegaleRappresentante { + uuid String @id @default(uuid()) + nome String + cognome String + soggettoBusinessInfoUuid String @unique + numeroTelefono NumeroTelefono? + indirizzoEmail IndirizzoEmail? + soggettoBusinessInfo SoggettoBusinessInfo @relation(fields: [soggettoBusinessInfoUuid], references: [uuid]) +} + +model Referente { + uuid String @id @default(uuid()) + nome String + cognome String + soggettoBusinessInfoUuid String @unique + numeroTelefono NumeroTelefono? + indirizzoEmail IndirizzoEmail? + soggettoBusinessInfo SoggettoBusinessInfo @relation(fields: [soggettoBusinessInfoUuid], references: [uuid]) +} + +model IndirizzoEmail { + uuid String @id @default(uuid()) + indirizzo String + etichetta String? + soggettoUuid String? + legaleRappresentanteUuid String? @unique + referenteUuid String? @unique + soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade) + referente Referente? @relation(fields: [referenteUuid], references: [uuid]) + legaleRappresentante LegaleRappresentante? @relation(fields: [legaleRappresentanteUuid], references: [uuid]) + + @@unique([indirizzo, soggettoUuid]) + @@index([soggettoUuid]) +} + +model NumeroTelefono { + uuid String @id @default(uuid()) + numero String + etichetta String? + soggettoUuid String? + legaleRappresentateUuid String? @unique + referenteUuid String? @unique + soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade) + legaleRappresentate LegaleRappresentante? @relation(fields: [legaleRappresentateUuid], references: [uuid]) + referente Referente? @relation(fields: [referenteUuid], references: [uuid]) + + @@unique([numero, soggettoUuid]) + @@index([soggettoUuid]) +} + +model Domicilio { + uuid String @id @default(uuid()) + etichetta String? + indirizzo String? + numeroCivico String? + citta String? + cap String? + provincia String? + soggettoUuid String + soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid], onDelete: Cascade) + contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[] + forniture Fornitura[] + contrattiEnelFibra ContrattoEnelFibra[] + prodottiOrdinati Ordine[] + leads Lead[] + + @@index([soggettoUuid]) +} + +model ServizioEwo { + id String @id + nome String @unique + fornitoreId String + tipoServizioEwo TipoServizioEwo + fornitore Fornitore @relation(fields: [fornitoreId], references: [id]) + tipiPratiche TipoPratica[] + colore String + icona String + forniture Fornitura[] + statiPossibiliPratiche StatoPratica[] + statiPossibiliContratti StatoContratto[] + offerte Offerta[] + moduliContratto ModuloContratto[] + + @@index([fornitoreId]) +} + +model Fornitura { + uuid String @id @default(uuid()) + etichetta String? + domicilioUuid String + servizioEwoId String + domicilio Domicilio @relation(fields: [domicilioUuid], references: [uuid], onDelete: Cascade) + servizioEwo ServizioEwo @relation(fields: [servizioEwoId], references: [id]) + fornituraLuce FornituraLuce? + fornituraGas FornituraGas? + + @@index([domicilioUuid]) + @@index([servizioEwoId]) +} + +model FornituraLuce { + uuid String @id @default(uuid()) + pod String @unique + fornituraUuid String @unique + potenza Float? + tensione Float? + consumoAnnuoLuce ConsumoAnnuoLuce? + contrattiEnelLuce ContrattoEnelLuce[] + fornitura Fornitura @relation(fields: [fornituraUuid], references: [uuid], onDelete: Cascade) + + @@index([fornituraUuid]) +} + +model ConsumoAnnuoLuce { + uuid String @id @default(uuid()) + consumo Float + meseRiferimentoConsumoAnnuo DateTime + fornituraLuceUuid String @unique + fornituraLuce FornituraLuce @relation(fields: [fornituraLuceUuid], references: [uuid], onDelete: Cascade) + + @@index([meseRiferimentoConsumoAnnuo, fornituraLuceUuid]) + @@index([fornituraLuceUuid]) +} + +model FornituraGas { + uuid String @id @default(uuid()) + pdr String @unique + fornituraUuid String @unique + classeMisuratoreGasId String? + matricolaContatore String? + remi String? + classeMisuratore ClasseMisuratoreGas? @relation(fields: [classeMisuratoreGasId], references: [id]) + consumoAnnuoGas ConsumoAnnuoGas? + contrattiEnelGas ContrattoEnelGas[] + fornitura Fornitura @relation(fields: [fornituraUuid], references: [uuid], onDelete: Cascade) + + @@index([classeMisuratoreGasId]) + @@index([fornituraUuid]) +} + +model ConsumoAnnuoGas { + uuid String @id @default(uuid()) + consumo Float + meseRiferimentoConsumoAnnuo DateTime + fornituraGasUuid String @unique + fornituraGas FornituraGas @relation(fields: [fornituraGasUuid], references: [uuid], onDelete: Cascade) + + @@index([meseRiferimentoConsumoAnnuo, fornituraGasUuid]) + @@index([fornituraGasUuid]) +} + +model Contratto { + uuid String @id @default(uuid()) + codice String @unique + dataInserimento DateTime @default(now()) + dataAttivazione DateTime? + ultimoAggiornamentoStato DateTime? + trend Boolean? + nota String? + marketingEnelEnergia Boolean @default(false) + marketingGruppoEnel Boolean @default(false) + profilazioneEnelEnergia Boolean @default(false) + bollettaWeb Boolean @default(false) + rid Boolean @default(false) + dataCessazione DateTime? + mesiDurata Int? + offertaUuid String? + contrattiEnelLuce ContrattoEnelLuce[] + contrattiEnelGas ContrattoEnelGas[] + contrattiEnelFibra ContrattoEnelFibra[] + contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[] + stato StatoContratto @relation(fields: [statoContrattoId], references: [id]) + statoContrattoId String + soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid]) + soggettoUuid String? + utente Utente? @relation(fields: [utenteUuid], references: [uuid]) + utenteUuid String? + negozio Negozio? @relation(fields: [negozioCodice], references: [codice]) + negozioCodice String? + pratica Pratica? @relation(fields: [praticaUuid], references: [uuid]) + praticaUuid String? + modulo ModuloContratto? @relation(fields: [moduloContrattoId], references: [id]) + moduloContrattoId String? + + @@index([statoContrattoId]) + @@index([praticaUuid]) + @@index([negozioCodice]) + @@index([utenteUuid]) + @@index([soggettoUuid]) + @@index([offertaUuid]) + @@index([moduloContrattoId]) + @@index([dataInserimento]) +} + +model ModuloContratto { + id String @id + nome String @unique + fornitoreId String + clienteTarget TipoSoggetto + canale Canale + serviziEwoCollegabili ServizioEwo[] + contratti Contratto[] + fornitore Fornitore @relation(fields: [fornitoreId], references: [id]) + tipoModulo TipoModuloContratto @relation(fields: [tipoModuloContrattoId], references: [id]) + tipoModuloContrattoId String + + @@index([tipoModuloContrattoId]) + @@index([fornitoreId]) + @@index([canale]) +} + +model TipoModuloContratto { + id String @id + nome String + numeroOfferteCollegabili Int + ModuloContratto ModuloContratto[] +} + +model StatoContratto { + id String @id + nome String + contratti Contratto[] + serviziEwo ServizioEwo[] + contrattiEnelLuce ContrattoEnelLuce[] + contrattiEnelGas ContrattoEnelGas[] + contrattiEnelFibra ContrattoEnelFibra[] + contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[] +} + +model Offerta { + uuid String @id @default(uuid()) + nome String @unique + dataFineOfferta DateTime + dataInizioOfferta DateTime + servizioEwoId String + servizioEwo ServizioEwo @relation(fields: [servizioEwoId], references: [id]) + contrattiEnelLuce ContrattoEnelLuce[] + contrattiEnelGas ContrattoEnelGas[] + contrattiEnelFibra ContrattoEnelFibra[] + contrattiEnelXAssicurazione ContrattoEnelXAssicurazione[] + offerteIncluse Offerta[] @relation("OfferteIncluse") + inclusaInOfferte Offerta[] @relation("OfferteIncluse") + + @@index([servizioEwoId]) +} + +model Pratica { + uuid String @id @default(uuid()) + codice String + dataInserimento DateTime @default(now()) + tipoPraticaId String + soggettoUuid String? + utenteUuid String? + negozioCodice String? + statoPraticaId String? + ultimoAggiornamentoStato DateTime? + tipoPratica TipoPratica @relation(fields: [tipoPraticaId], references: [id]) + soggetto Soggetto? @relation(fields: [soggettoUuid], references: [uuid]) + utente Utente? @relation(fields: [utenteUuid], references: [uuid]) + negozio Negozio? @relation(fields: [negozioCodice], references: [codice]) + stato StatoPratica? @relation(fields: [statoPraticaId], references: [id]) + contratto Contratto[] + + @@unique([codice, tipoPraticaId], name: "codicePratica_tipoPratica") + @@index([tipoPraticaId]) + @@index([statoPraticaId]) + @@index([negozioCodice]) + @@index([utenteUuid]) + @@index([soggettoUuid]) +} + +model TipoPratica { + id String @id + nome String @unique + serviziEwo ServizioEwo[] + pratiche Pratica[] +} + +model StatoPratica { + id String @id + nome String + pratiche Pratica[] + serviziEwo ServizioEwo[] +} + +model ContrattoEnelLuce { + uuid String @id @default(uuid()) + statoContrattoId String + fornituraLuceUuid String + contrattoUuid String + offertaUuid String? + stato StatoContratto @relation(fields: [statoContrattoId], references: [id]) + fornituraLuce FornituraLuce @relation(fields: [fornituraLuceUuid], references: [uuid], onDelete: Cascade) + contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade) + offerta Offerta? @relation(fields: [offertaUuid], references: [uuid]) + + @@index([statoContrattoId]) + @@index([contrattoUuid]) + @@index([fornituraLuceUuid]) + @@index([offertaUuid]) +} + +model ContrattoEnelGas { + uuid String @id @default(uuid()) + statoContrattoId String + fornituraGasUuid String + contrattoUuid String + offertaUuid String? + stato StatoContratto @relation(fields: [statoContrattoId], references: [id]) + fornituraGas FornituraGas @relation(fields: [fornituraGasUuid], references: [uuid], onDelete: Cascade) + contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade) + offerta Offerta? @relation(fields: [offertaUuid], references: [uuid]) + + @@index([statoContrattoId]) + @@index([fornituraGasUuid]) + @@index([contrattoUuid]) + @@index([offertaUuid]) +} + +model ContrattoEnelXAssicurazione { + uuid String @id @default(uuid()) + statoContrattoId String + contrattoUuid String + domicilioUuid String + offertaUuid String? + stato StatoContratto @relation(fields: [statoContrattoId], references: [id]) + contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade) + domicilio Domicilio @relation(fields: [domicilioUuid], references: [uuid], onDelete: Cascade) + offerta Offerta? @relation(fields: [offertaUuid], references: [uuid]) + + @@index([statoContrattoId]) + @@index([contrattoUuid]) + @@index([domicilioUuid]) + @@index([offertaUuid]) +} + +model ContrattoEnelFibra { + uuid String @id @default(uuid()) + statoContrattoId String + contrattoUuid String + servizioContrattoEnelFibra ServizioContrattoEnelFibra + tipoContrattoEnelFibra TipoContrattoEnelFibra + tecnologiaContrattoEnelFibra TecnologiaContrattoEnelFibra + domicilioUuid String? + offertaUuid String? + stato StatoContratto @relation(fields: [statoContrattoId], references: [id]) + contratto Contratto @relation(fields: [contrattoUuid], references: [uuid], onDelete: Cascade) + offerta Offerta? @relation(fields: [offertaUuid], references: [uuid]) + domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid]) + + @@index([statoContrattoId]) + @@index([contrattoUuid]) + @@index([offertaUuid]) + @@index([domicilioUuid]) +} + +model ClasseMisuratoreGas { + portataMin Float + portataNominale Float + portataMax Float + id String @id + classe String @unique + fornituraGas FornituraGas[] +} + +model Fornitore { + id String @id + nome String @unique + serviziEwo ServizioEwo[] + moduliContratto ModuloContratto[] + prodotti Prodotto[] +} + +/// Model for "Prodotti" sold to "Clienti" +model Ordine { + /// Unique identifier + uuid String @id @default(uuid()) + codice String @unique + /// Date when the "Prodotto" was sold + dataInserimento DateTime @default(now()) + /// Valore dell'ordine preventivato dall'agente + valore Float + /// The "Prodotti" sold + prodotti Prodotto[] + /// The "Cliente" who bought the "Prodotto" + soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid]) + soggettoUuid String + /// The "Domicilio" linked to this "Prodotto" (and usually used in) + domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid]) + domicilioUuid String? + + statoOrdine StatoOrdine? @relation(fields: [statoOrdineId], references: [id]) + statoOrdineId String? + + lead Lead? @relation(fields: [leadUuid], references: [uuid]) + leadUuid String? + + utente Utente @relation(fields: [utenteUuid], references: [uuid]) + utenteUuid String + negozio Negozio? @relation(fields: [negozioCodice], references: [codice]) + negozioCodice String? + + @@index([soggettoUuid]) + @@index([domicilioUuid]) + @@index([statoOrdineId]) + @@index([leadUuid]) + @@index([utenteUuid]) + @@index([negozioCodice]) +} + +model StatoOrdine { + id String @id + nome String + ordini Ordine[] + tipoStato TipoStato + /// ordinamento del progresso degli stati + ordine Int + colore String +} + +/// Model of unique "Prodotti" sellable to the "Clienti" +model Prodotto { + uuid String @id @default(uuid()) + /// Name of the product + modello String + /// Price of the product + prezzo Float? + /// Tells if the product is available for sale + vendibileDal DateTime? + /// Tells if the product is still available for sale + vendibileAl DateTime? + /// The "Produttore" of this "Prodotto" + produttore Produttore @relation(fields: [produttoreId], references: [id]) + produttoreId String + /// The "Prodotti Rivenduti" of this prodotto + prodottiOrdinati Ordine[] + /// The "Fornitore" of this "Prodotto" + fornitore Fornitore @relation(fields: [fornitoreId], references: [id]) + fornitoreId String + tipoProdotto TipoProdotto @relation(fields: [tipoProdottoId], references: [id]) + tipoProdottoId String + + @@index([produttoreId]) + @@index([fornitoreId]) + @@index([tipoProdottoId]) +} + +model TipoProdotto { + id String @id + nome String @unique + + prodotti Prodotto[] +} + +/// Model of unique "Produttori" +model Produttore { + /// Unique identifier + id String @id + /// Name of the "Produttore" + nome String @unique + + /// The "Prodotti" produced by this "Produttore" + prodotti Prodotto[] +} + +model Utente { + uuid String @id @default(uuid()) + firebaseUid String? @unique + email String @unique + ruolo RuoloUtente + photoUrl String? + negozioCodice String? + nomeVisualizzato String + negozio Negozio? @relation(fields: [negozioCodice], references: [codice]) + contratti Contratto[] + pratiche Pratica[] + ingressi Ingressi[] + leadsGestiti Lead[] @relation(name: "LeadsGestore") + leadsAssegnati Lead[] @relation(name: "LeadsAgente") + opportunitaGestite Opportunita[] @relation(name: "GestoriLead") + opportunitaAssegnate Opportunita[] @relation(name: "Agenti") + ordini Ordine[] + history History[] + + @@index([negozioCodice]) +} + +model Negozio { + codice String @id + nome String @unique + pratiche Pratica[] + utenti Utente[] + contratti Contratto[] + soggetti Soggetto[] + zonaNegozio ZonaNegozio @relation(fields: [zonaNegozioId], references: [id]) + zonaNegozioId String + ingressi Ingressi[] + leads Lead[] + Ordine Ordine[] + + @@index([zonaNegozioId]) +} + +model Ingressi { + uuid String @id @default(uuid()) + data DateTime + clienti Int + nonClienti Int + utenteUuid String + negozioCodice String + utente Utente @relation(fields: [utenteUuid], references: [uuid]) + negozio Negozio @relation(fields: [negozioCodice], references: [codice]) + + @@index([data]) + @@index([negozioCodice]) + @@index([utenteUuid]) +} + +model ZonaNegozio { + id String @id + nome String @unique + negozi Negozio[] +} + +model Lead { + uuid String @id @default(uuid()) + opportunita Opportunita @relation(fields: [opportunitaUuid], references: [uuid]) + opportunitaUuid String + soggetto Soggetto @relation(fields: [soggettoUuid], references: [uuid]) + soggettoUuid String + domicilio Domicilio? @relation(fields: [domicilioUuid], references: [uuid]) + domicilioUuid String? + statoOpportunita StatoOpportunita @relation(fields: [statoOpportunitaUuid], references: [uuid]) + statoOpportunitaUuid String + utente Utente? @relation(fields: [utenteUuid], references: [uuid], name: "LeadsGestore") + utenteUuid String? + negozio Negozio? @relation(fields: [negozioCodice], references: [codice]) + negozioCodice String? + agente Utente? @relation(fields: [agenteUuid], references: [uuid], name: "LeadsAgente") + agenteUuid String? + appuntamenti String? @db.MediumText + form String? @db.MediumText + dataInserimento DateTime? + dataScadenza DateTime? + dataAppuntamento DateTime? + nota String? + ordine Ordine[] + history History[] + + @@index([utenteUuid]) + @@index([domicilioUuid]) + @@index([opportunitaUuid]) + @@index([soggettoUuid]) + @@index([statoOpportunitaUuid]) + @@index([agenteUuid]) + @@index([negozioCodice]) +} + +model Opportunita { + uuid String @id @default(uuid()) + nome String + dataInizio DateTime? + dataFine DateTime? + leads Lead[] + form String? @db.MediumText + gestoriLead Utente[] @relation(name: "GestoriLead") + agenti Utente[] @relation(name: "Agenti") +} + +model StatoOpportunita { + uuid String @id @default(uuid()) + nome String + tipoStato TipoStato? + /// ordinamento del progresso degli stati + ordine Int? + colore String + opportunitaUuid String + leads Lead[] + + @@index([opportunitaUuid]) + @@index([ordine]) +} + +model History { + uuid String @id @default(uuid()) + timestamp DateTime + + event String + + // History types + comment HistoryComment? + attachment HistoryAttachment? + + // Semantic Tables + Utente Utente @relation(fields: [utenteUuid], references: [uuid], onDelete: Cascade) + utenteUuid String + + Lead Lead? @relation(fields: [leadUuid], references: [uuid], onDelete: Cascade) + leadUuid String? + + @@index([utenteUuid]) + @@index([leadUuid]) +} + +model HistoryComment { + comment String + + History History @relation(fields: [historyUuid], references: [uuid]) + historyUuid String @unique +} + +model HistoryAttachment { + url String + name String + + History History @relation(fields: [historyUuid], references: [uuid]) + historyUuid String @unique +} + +enum TipoServizioEwo { + FORNITURA + DOMICILIO +} + +enum TipoSoggetto { + CONSUMER + BUSINESS +} + +enum Canale { + SEP + NEVE + CORPORATE +} + +enum ServizioContrattoEnelFibra { + DATI + DATI_VOCE +} + +enum TipoContrattoEnelFibra { + NUOVA_ATTIVAZIONE + MIGRAZIONE +} + +enum TecnologiaContrattoEnelFibra { + FTTH + FTTC +} + +enum RuoloUtente { + CONSULENTE + AGENTE + OPERATORE + RESPONSABILE + AMMINISTRATORE + DEVELOPER +} + +enum TipoStato { + DA_FARE + IN_CORSO + COMPLETATO + CANCELLATO +} diff --git a/i340/pubspec.yaml b/i340/pubspec.yaml new file mode 100644 index 00000000..3fe9c81a --- /dev/null +++ b/i340/pubspec.yaml @@ -0,0 +1,18 @@ +name: i340 +description: A sample command-line application. +version: 1.0.0 +publish_to: none +# repository: https://github.com/my_org/my_repo + +environment: + sdk: ^3.4.0-185.0.dev + +# Add regular dependencies here. +dependencies: + orm: + path: .. + # path: ^1.8.0 + +dev_dependencies: + lints: ^3.0.0 + test: ^1.24.0 diff --git a/i340/test/i340_test.dart b/i340/test/i340_test.dart new file mode 100644 index 00000000..a946e9f7 --- /dev/null +++ b/i340/test/i340_test.dart @@ -0,0 +1,8 @@ +import 'package:i340/i340.dart'; +import 'package:test/test.dart'; + +void main() { + test('calculate', () { + expect(calculate(), 42); + }); +} From 9329aead1de336d72296c271b3a946c1ddac4008 Mon Sep 17 00:00:00 2001 From: Seven Du Date: Fri, 1 Mar 2024 00:28:49 +0800 Subject: [PATCH 3/3] chore: preview version 4.0.1 --- CHANGELOG.md | 19 +++++++++++++++++++ docs/getting-started/index.md | 4 ++-- lib/version.dart | 2 +- pubspec.yaml | 2 +- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e18d914b..f913a7d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,22 @@ +# Prisma Client Dart v4.0.1 + +To install Prisma Client for Dart v4.0.1 run: + +```bash +dart pub add orm:4.0.1 +``` + +Or update your `pubspec.yaml` file: + +```yaml +dependencies: + orm: 4.0.1 +``` + +## What's Changed + +- **Bug**(Generator): Fixed duplicate enum field name is `name`. + # Priama Client Dart v4.0.0 To install Prisma Client Dart v4.0.0 run: diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index 77c06254..32ef18dc 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -77,12 +77,12 @@ bun add prisma Please run the following command to install `orm`: ```bash -dart pub add orm:4.0.0 +dart pub add orm:4.0.1 ``` Or add the following to your `pubspec.yaml` file: ```yaml dependencies: - orm: ^4.0.0 // [!code focus] + orm: ^4.0.1 // [!code focus] ``` diff --git a/lib/version.dart b/lib/version.dart index 7bb6bf75..22dbe339 100644 --- a/lib/version.dart +++ b/lib/version.dart @@ -1,3 +1,3 @@ library prisma.version; -const version = '4.0.0'; +const version = '4.0.1'; diff --git a/pubspec.yaml b/pubspec.yaml index 9321af89..e4550461 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: orm description: Next-generation ORM for Dart & Flutter | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB. -version: 4.0.0 +version: 4.0.1 homepage: https://prisma.pub repository: https://github.com/medz/prisma-dart funding: