
/* !!! This is code generated by Prisma. Do not edit directly. !!! */
/* eslint-disable */
// biome-ignore-all lint: generated file
// @ts-nocheck 
/*
 * This file exports the `account` model and its related types.
 *
 * 🟢 You can import this file directly.
 */
import type * as runtime from "@prisma/client/runtime/client"
import type * as $Enums from "../enums"
import type * as Prisma from "../internal/prismaNamespace"

/**
 * Model account
 * 
 */
export type accountModel = runtime.Types.Result.DefaultSelection<Prisma.$accountPayload>

export type AggregateAccount = {
  _count: AccountCountAggregateOutputType | null
  _avg: AccountAvgAggregateOutputType | null
  _sum: AccountSumAggregateOutputType | null
  _min: AccountMinAggregateOutputType | null
  _max: AccountMaxAggregateOutputType | null
}

export type AccountAvgAggregateOutputType = {
  id: number | null
  date_orig: number | null
  date_last: number | null
  date_expire: number | null
  country_id: number | null
  currency_id: number | null
  group_id: number | null
  status: number | null
  invoice_delivery: number | null
  ppa_all_invoice: number | null
  ppa_amount: runtime.Decimal | null
  ppa_amount_buffer: number | null
  ppa_all_tmp: number | null
  tax_group: number | null
  created_by: number | null
  ppa_cc: number | null
}

export type AccountSumAggregateOutputType = {
  id: bigint | null
  date_orig: bigint | null
  date_last: bigint | null
  date_expire: bigint | null
  country_id: number | null
  currency_id: number | null
  group_id: number | null
  status: number | null
  invoice_delivery: number | null
  ppa_all_invoice: number | null
  ppa_amount: runtime.Decimal | null
  ppa_amount_buffer: number | null
  ppa_all_tmp: number | null
  tax_group: number | null
  created_by: number | null
  ppa_cc: number | null
}

export type AccountMinAggregateOutputType = {
  id: bigint | null
  customer_id: string | null
  date_orig: bigint | null
  date_last: bigint | null
  date_expire: bigint | null
  language_id: string | null
  country_id: number | null
  currency_id: number | null
  username: string | null
  password: string | null
  group_id: number | null
  misc: string | null
  status: number | null
  first_name: string | null
  middle_name: string | null
  last_name: string | null
  mandataire: string | null
  title: string | null
  email: string | null
  email_autre: string | null
  company: string | null
  contact: string | null
  address1: string | null
  address2: string | null
  city: string | null
  state: string | null
  zip: string | null
  tel_home: string | null
  tel_office: string | null
  tel_office_ext: string | null
  cell: string | null
  fax: string | null
  invoice_delivery: number | null
  land_owner: boolean | null
  frais: boolean | null
  ppa: boolean | null
  ppa_all_invoice: number | null
  ppa_name: string | null
  ppa_code: string | null
  ppa_branch: string | null
  ppa_account: string | null
  ppa_amount: runtime.Decimal | null
  ppa_amount_buffer: number | null
  ppa_all_tmp: number | null
  ppa_fixed: boolean | null
  commercial: boolean | null
  vip: boolean | null
  tax_group: number | null
  data_check: boolean | null
  created_by: number | null
  notes_client: string | null
  keyword: string | null
  terminate_reason: string | null
  terminate_cie: string | null
  terminate_note: string | null
  terminate_date: string | null
  call: boolean | null
  pub: boolean | null
  portal_client_log: boolean | null
  mauvais_payeur: boolean | null
  renew_phone: boolean | null
  ppa_cc: number | null
  stripe_id: string | null
}

export type AccountMaxAggregateOutputType = {
  id: bigint | null
  customer_id: string | null
  date_orig: bigint | null
  date_last: bigint | null
  date_expire: bigint | null
  language_id: string | null
  country_id: number | null
  currency_id: number | null
  username: string | null
  password: string | null
  group_id: number | null
  misc: string | null
  status: number | null
  first_name: string | null
  middle_name: string | null
  last_name: string | null
  mandataire: string | null
  title: string | null
  email: string | null
  email_autre: string | null
  company: string | null
  contact: string | null
  address1: string | null
  address2: string | null
  city: string | null
  state: string | null
  zip: string | null
  tel_home: string | null
  tel_office: string | null
  tel_office_ext: string | null
  cell: string | null
  fax: string | null
  invoice_delivery: number | null
  land_owner: boolean | null
  frais: boolean | null
  ppa: boolean | null
  ppa_all_invoice: number | null
  ppa_name: string | null
  ppa_code: string | null
  ppa_branch: string | null
  ppa_account: string | null
  ppa_amount: runtime.Decimal | null
  ppa_amount_buffer: number | null
  ppa_all_tmp: number | null
  ppa_fixed: boolean | null
  commercial: boolean | null
  vip: boolean | null
  tax_group: number | null
  data_check: boolean | null
  created_by: number | null
  notes_client: string | null
  keyword: string | null
  terminate_reason: string | null
  terminate_cie: string | null
  terminate_note: string | null
  terminate_date: string | null
  call: boolean | null
  pub: boolean | null
  portal_client_log: boolean | null
  mauvais_payeur: boolean | null
  renew_phone: boolean | null
  ppa_cc: number | null
  stripe_id: string | null
}

export type AccountCountAggregateOutputType = {
  id: number
  customer_id: number
  date_orig: number
  date_last: number
  date_expire: number
  language_id: number
  country_id: number
  currency_id: number
  username: number
  password: number
  group_id: number
  misc: number
  status: number
  first_name: number
  middle_name: number
  last_name: number
  mandataire: number
  title: number
  email: number
  email_autre: number
  company: number
  contact: number
  address1: number
  address2: number
  city: number
  state: number
  zip: number
  tel_home: number
  tel_office: number
  tel_office_ext: number
  cell: number
  fax: number
  invoice_delivery: number
  land_owner: number
  frais: number
  ppa: number
  ppa_all_invoice: number
  ppa_name: number
  ppa_code: number
  ppa_branch: number
  ppa_account: number
  ppa_amount: number
  ppa_amount_buffer: number
  ppa_all_tmp: number
  ppa_fixed: number
  commercial: number
  vip: number
  tax_group: number
  data_check: number
  created_by: number
  notes_client: number
  keyword: number
  terminate_reason: number
  terminate_cie: number
  terminate_note: number
  terminate_date: number
  call: number
  pub: number
  portal_client_log: number
  mauvais_payeur: number
  renew_phone: number
  ppa_cc: number
  stripe_id: number
  _all: number
}


export type AccountAvgAggregateInputType = {
  id?: true
  date_orig?: true
  date_last?: true
  date_expire?: true
  country_id?: true
  currency_id?: true
  group_id?: true
  status?: true
  invoice_delivery?: true
  ppa_all_invoice?: true
  ppa_amount?: true
  ppa_amount_buffer?: true
  ppa_all_tmp?: true
  tax_group?: true
  created_by?: true
  ppa_cc?: true
}

export type AccountSumAggregateInputType = {
  id?: true
  date_orig?: true
  date_last?: true
  date_expire?: true
  country_id?: true
  currency_id?: true
  group_id?: true
  status?: true
  invoice_delivery?: true
  ppa_all_invoice?: true
  ppa_amount?: true
  ppa_amount_buffer?: true
  ppa_all_tmp?: true
  tax_group?: true
  created_by?: true
  ppa_cc?: true
}

export type AccountMinAggregateInputType = {
  id?: true
  customer_id?: true
  date_orig?: true
  date_last?: true
  date_expire?: true
  language_id?: true
  country_id?: true
  currency_id?: true
  username?: true
  password?: true
  group_id?: true
  misc?: true
  status?: true
  first_name?: true
  middle_name?: true
  last_name?: true
  mandataire?: true
  title?: true
  email?: true
  email_autre?: true
  company?: true
  contact?: true
  address1?: true
  address2?: true
  city?: true
  state?: true
  zip?: true
  tel_home?: true
  tel_office?: true
  tel_office_ext?: true
  cell?: true
  fax?: true
  invoice_delivery?: true
  land_owner?: true
  frais?: true
  ppa?: true
  ppa_all_invoice?: true
  ppa_name?: true
  ppa_code?: true
  ppa_branch?: true
  ppa_account?: true
  ppa_amount?: true
  ppa_amount_buffer?: true
  ppa_all_tmp?: true
  ppa_fixed?: true
  commercial?: true
  vip?: true
  tax_group?: true
  data_check?: true
  created_by?: true
  notes_client?: true
  keyword?: true
  terminate_reason?: true
  terminate_cie?: true
  terminate_note?: true
  terminate_date?: true
  call?: true
  pub?: true
  portal_client_log?: true
  mauvais_payeur?: true
  renew_phone?: true
  ppa_cc?: true
  stripe_id?: true
}

export type AccountMaxAggregateInputType = {
  id?: true
  customer_id?: true
  date_orig?: true
  date_last?: true
  date_expire?: true
  language_id?: true
  country_id?: true
  currency_id?: true
  username?: true
  password?: true
  group_id?: true
  misc?: true
  status?: true
  first_name?: true
  middle_name?: true
  last_name?: true
  mandataire?: true
  title?: true
  email?: true
  email_autre?: true
  company?: true
  contact?: true
  address1?: true
  address2?: true
  city?: true
  state?: true
  zip?: true
  tel_home?: true
  tel_office?: true
  tel_office_ext?: true
  cell?: true
  fax?: true
  invoice_delivery?: true
  land_owner?: true
  frais?: true
  ppa?: true
  ppa_all_invoice?: true
  ppa_name?: true
  ppa_code?: true
  ppa_branch?: true
  ppa_account?: true
  ppa_amount?: true
  ppa_amount_buffer?: true
  ppa_all_tmp?: true
  ppa_fixed?: true
  commercial?: true
  vip?: true
  tax_group?: true
  data_check?: true
  created_by?: true
  notes_client?: true
  keyword?: true
  terminate_reason?: true
  terminate_cie?: true
  terminate_note?: true
  terminate_date?: true
  call?: true
  pub?: true
  portal_client_log?: true
  mauvais_payeur?: true
  renew_phone?: true
  ppa_cc?: true
  stripe_id?: true
}

export type AccountCountAggregateInputType = {
  id?: true
  customer_id?: true
  date_orig?: true
  date_last?: true
  date_expire?: true
  language_id?: true
  country_id?: true
  currency_id?: true
  username?: true
  password?: true
  group_id?: true
  misc?: true
  status?: true
  first_name?: true
  middle_name?: true
  last_name?: true
  mandataire?: true
  title?: true
  email?: true
  email_autre?: true
  company?: true
  contact?: true
  address1?: true
  address2?: true
  city?: true
  state?: true
  zip?: true
  tel_home?: true
  tel_office?: true
  tel_office_ext?: true
  cell?: true
  fax?: true
  invoice_delivery?: true
  land_owner?: true
  frais?: true
  ppa?: true
  ppa_all_invoice?: true
  ppa_name?: true
  ppa_code?: true
  ppa_branch?: true
  ppa_account?: true
  ppa_amount?: true
  ppa_amount_buffer?: true
  ppa_all_tmp?: true
  ppa_fixed?: true
  commercial?: true
  vip?: true
  tax_group?: true
  data_check?: true
  created_by?: true
  notes_client?: true
  keyword?: true
  terminate_reason?: true
  terminate_cie?: true
  terminate_note?: true
  terminate_date?: true
  call?: true
  pub?: true
  portal_client_log?: true
  mauvais_payeur?: true
  renew_phone?: true
  ppa_cc?: true
  stripe_id?: true
  _all?: true
}

export type AccountAggregateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Filter which account to aggregate.
   */
  where?: Prisma.accountWhereInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
   * 
   * Determine the order of accounts to fetch.
   */
  orderBy?: Prisma.accountOrderByWithRelationInput | Prisma.accountOrderByWithRelationInput[]
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
   * 
   * Sets the start position
   */
  cursor?: Prisma.accountWhereUniqueInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Take `±n` accounts from the position of the cursor.
   */
  take?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Skip the first `n` accounts.
   */
  skip?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
   * 
   * Count returned accounts
  **/
  _count?: true | AccountCountAggregateInputType
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
   * 
   * Select which fields to average
  **/
  _avg?: AccountAvgAggregateInputType
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
   * 
   * Select which fields to sum
  **/
  _sum?: AccountSumAggregateInputType
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
   * 
   * Select which fields to find the minimum value
  **/
  _min?: AccountMinAggregateInputType
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
   * 
   * Select which fields to find the maximum value
  **/
  _max?: AccountMaxAggregateInputType
}

export type GetAccountAggregateType<T extends AccountAggregateArgs> = {
      [P in keyof T & keyof AggregateAccount]: P extends '_count' | 'count'
    ? T[P] extends true
      ? number
      : Prisma.GetScalarType<T[P], AggregateAccount[P]>
    : Prisma.GetScalarType<T[P], AggregateAccount[P]>
}




export type accountGroupByArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  where?: Prisma.accountWhereInput
  orderBy?: Prisma.accountOrderByWithAggregationInput | Prisma.accountOrderByWithAggregationInput[]
  by: Prisma.AccountScalarFieldEnum[] | Prisma.AccountScalarFieldEnum
  having?: Prisma.accountScalarWhereWithAggregatesInput
  take?: number
  skip?: number
  _count?: AccountCountAggregateInputType | true
  _avg?: AccountAvgAggregateInputType
  _sum?: AccountSumAggregateInputType
  _min?: AccountMinAggregateInputType
  _max?: AccountMaxAggregateInputType
}

export type AccountGroupByOutputType = {
  id: bigint
  customer_id: string | null
  date_orig: bigint | null
  date_last: bigint | null
  date_expire: bigint | null
  language_id: string
  country_id: number
  currency_id: number | null
  username: string | null
  password: string | null
  group_id: number
  misc: string | null
  status: number | null
  first_name: string | null
  middle_name: string | null
  last_name: string | null
  mandataire: string | null
  title: string | null
  email: string | null
  email_autre: string | null
  company: string | null
  contact: string
  address1: string | null
  address2: string | null
  city: string | null
  state: string | null
  zip: string | null
  tel_home: string | null
  tel_office: string | null
  tel_office_ext: string | null
  cell: string | null
  fax: string | null
  invoice_delivery: number
  land_owner: boolean
  frais: boolean
  ppa: boolean
  ppa_all_invoice: number
  ppa_name: string | null
  ppa_code: string | null
  ppa_branch: string | null
  ppa_account: string | null
  ppa_amount: runtime.Decimal
  ppa_amount_buffer: number
  ppa_all_tmp: number
  ppa_fixed: boolean
  commercial: boolean
  vip: boolean
  tax_group: number
  data_check: boolean
  created_by: number | null
  notes_client: string | null
  keyword: string | null
  terminate_reason: string | null
  terminate_cie: string | null
  terminate_note: string | null
  terminate_date: string | null
  call: boolean
  pub: boolean
  portal_client_log: boolean
  mauvais_payeur: boolean
  renew_phone: boolean
  ppa_cc: number
  stripe_id: string | null
  _count: AccountCountAggregateOutputType | null
  _avg: AccountAvgAggregateOutputType | null
  _sum: AccountSumAggregateOutputType | null
  _min: AccountMinAggregateOutputType | null
  _max: AccountMaxAggregateOutputType | null
}

type GetAccountGroupByPayload<T extends accountGroupByArgs> = Prisma.PrismaPromise<
  Array<
    Prisma.PickEnumerable<AccountGroupByOutputType, T['by']> &
      {
        [P in ((keyof T) & (keyof AccountGroupByOutputType))]: P extends '_count'
          ? T[P] extends boolean
            ? number
            : Prisma.GetScalarType<T[P], AccountGroupByOutputType[P]>
          : Prisma.GetScalarType<T[P], AccountGroupByOutputType[P]>
      }
    >
  >



export type accountWhereInput = {
  AND?: Prisma.accountWhereInput | Prisma.accountWhereInput[]
  OR?: Prisma.accountWhereInput[]
  NOT?: Prisma.accountWhereInput | Prisma.accountWhereInput[]
  id?: Prisma.BigIntFilter<"account"> | bigint | number
  customer_id?: Prisma.StringNullableFilter<"account"> | string | null
  date_orig?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  date_last?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  date_expire?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  language_id?: Prisma.StringFilter<"account"> | string
  country_id?: Prisma.IntFilter<"account"> | number
  currency_id?: Prisma.IntNullableFilter<"account"> | number | null
  username?: Prisma.StringNullableFilter<"account"> | string | null
  password?: Prisma.StringNullableFilter<"account"> | string | null
  group_id?: Prisma.IntFilter<"account"> | number
  misc?: Prisma.StringNullableFilter<"account"> | string | null
  status?: Prisma.IntNullableFilter<"account"> | number | null
  first_name?: Prisma.StringNullableFilter<"account"> | string | null
  middle_name?: Prisma.StringNullableFilter<"account"> | string | null
  last_name?: Prisma.StringNullableFilter<"account"> | string | null
  mandataire?: Prisma.StringNullableFilter<"account"> | string | null
  title?: Prisma.StringNullableFilter<"account"> | string | null
  email?: Prisma.StringNullableFilter<"account"> | string | null
  email_autre?: Prisma.StringNullableFilter<"account"> | string | null
  company?: Prisma.StringNullableFilter<"account"> | string | null
  contact?: Prisma.StringFilter<"account"> | string
  address1?: Prisma.StringNullableFilter<"account"> | string | null
  address2?: Prisma.StringNullableFilter<"account"> | string | null
  city?: Prisma.StringNullableFilter<"account"> | string | null
  state?: Prisma.StringNullableFilter<"account"> | string | null
  zip?: Prisma.StringNullableFilter<"account"> | string | null
  tel_home?: Prisma.StringNullableFilter<"account"> | string | null
  tel_office?: Prisma.StringNullableFilter<"account"> | string | null
  tel_office_ext?: Prisma.StringNullableFilter<"account"> | string | null
  cell?: Prisma.StringNullableFilter<"account"> | string | null
  fax?: Prisma.StringNullableFilter<"account"> | string | null
  invoice_delivery?: Prisma.IntFilter<"account"> | number
  land_owner?: Prisma.BoolFilter<"account"> | boolean
  frais?: Prisma.BoolFilter<"account"> | boolean
  ppa?: Prisma.BoolFilter<"account"> | boolean
  ppa_all_invoice?: Prisma.IntFilter<"account"> | number
  ppa_name?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_code?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_branch?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_account?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_amount?: Prisma.DecimalFilter<"account"> | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFilter<"account"> | number
  ppa_all_tmp?: Prisma.IntFilter<"account"> | number
  ppa_fixed?: Prisma.BoolFilter<"account"> | boolean
  commercial?: Prisma.BoolFilter<"account"> | boolean
  vip?: Prisma.BoolFilter<"account"> | boolean
  tax_group?: Prisma.IntFilter<"account"> | number
  data_check?: Prisma.BoolFilter<"account"> | boolean
  created_by?: Prisma.IntNullableFilter<"account"> | number | null
  notes_client?: Prisma.StringNullableFilter<"account"> | string | null
  keyword?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_reason?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_cie?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_note?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_date?: Prisma.StringNullableFilter<"account"> | string | null
  call?: Prisma.BoolFilter<"account"> | boolean
  pub?: Prisma.BoolFilter<"account"> | boolean
  portal_client_log?: Prisma.BoolFilter<"account"> | boolean
  mauvais_payeur?: Prisma.BoolFilter<"account"> | boolean
  renew_phone?: Prisma.BoolFilter<"account"> | boolean
  ppa_cc?: Prisma.IntFilter<"account"> | number
  stripe_id?: Prisma.StringNullableFilter<"account"> | string | null
}

export type accountOrderByWithRelationInput = {
  id?: Prisma.SortOrder
  customer_id?: Prisma.SortOrderInput | Prisma.SortOrder
  date_orig?: Prisma.SortOrderInput | Prisma.SortOrder
  date_last?: Prisma.SortOrderInput | Prisma.SortOrder
  date_expire?: Prisma.SortOrderInput | Prisma.SortOrder
  language_id?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrderInput | Prisma.SortOrder
  username?: Prisma.SortOrderInput | Prisma.SortOrder
  password?: Prisma.SortOrderInput | Prisma.SortOrder
  group_id?: Prisma.SortOrder
  misc?: Prisma.SortOrderInput | Prisma.SortOrder
  status?: Prisma.SortOrderInput | Prisma.SortOrder
  first_name?: Prisma.SortOrderInput | Prisma.SortOrder
  middle_name?: Prisma.SortOrderInput | Prisma.SortOrder
  last_name?: Prisma.SortOrderInput | Prisma.SortOrder
  mandataire?: Prisma.SortOrderInput | Prisma.SortOrder
  title?: Prisma.SortOrderInput | Prisma.SortOrder
  email?: Prisma.SortOrderInput | Prisma.SortOrder
  email_autre?: Prisma.SortOrderInput | Prisma.SortOrder
  company?: Prisma.SortOrderInput | Prisma.SortOrder
  contact?: Prisma.SortOrder
  address1?: Prisma.SortOrderInput | Prisma.SortOrder
  address2?: Prisma.SortOrderInput | Prisma.SortOrder
  city?: Prisma.SortOrderInput | Prisma.SortOrder
  state?: Prisma.SortOrderInput | Prisma.SortOrder
  zip?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_home?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_office?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_office_ext?: Prisma.SortOrderInput | Prisma.SortOrder
  cell?: Prisma.SortOrderInput | Prisma.SortOrder
  fax?: Prisma.SortOrderInput | Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  land_owner?: Prisma.SortOrder
  frais?: Prisma.SortOrder
  ppa?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_name?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_code?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_branch?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_account?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  ppa_fixed?: Prisma.SortOrder
  commercial?: Prisma.SortOrder
  vip?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  data_check?: Prisma.SortOrder
  created_by?: Prisma.SortOrderInput | Prisma.SortOrder
  notes_client?: Prisma.SortOrderInput | Prisma.SortOrder
  keyword?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_reason?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_cie?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_note?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_date?: Prisma.SortOrderInput | Prisma.SortOrder
  call?: Prisma.SortOrder
  pub?: Prisma.SortOrder
  portal_client_log?: Prisma.SortOrder
  mauvais_payeur?: Prisma.SortOrder
  renew_phone?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
  stripe_id?: Prisma.SortOrderInput | Prisma.SortOrder
  _relevance?: Prisma.accountOrderByRelevanceInput
}

export type accountWhereUniqueInput = Prisma.AtLeast<{
  id?: bigint | number
  AND?: Prisma.accountWhereInput | Prisma.accountWhereInput[]
  OR?: Prisma.accountWhereInput[]
  NOT?: Prisma.accountWhereInput | Prisma.accountWhereInput[]
  customer_id?: Prisma.StringNullableFilter<"account"> | string | null
  date_orig?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  date_last?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  date_expire?: Prisma.BigIntNullableFilter<"account"> | bigint | number | null
  language_id?: Prisma.StringFilter<"account"> | string
  country_id?: Prisma.IntFilter<"account"> | number
  currency_id?: Prisma.IntNullableFilter<"account"> | number | null
  username?: Prisma.StringNullableFilter<"account"> | string | null
  password?: Prisma.StringNullableFilter<"account"> | string | null
  group_id?: Prisma.IntFilter<"account"> | number
  misc?: Prisma.StringNullableFilter<"account"> | string | null
  status?: Prisma.IntNullableFilter<"account"> | number | null
  first_name?: Prisma.StringNullableFilter<"account"> | string | null
  middle_name?: Prisma.StringNullableFilter<"account"> | string | null
  last_name?: Prisma.StringNullableFilter<"account"> | string | null
  mandataire?: Prisma.StringNullableFilter<"account"> | string | null
  title?: Prisma.StringNullableFilter<"account"> | string | null
  email?: Prisma.StringNullableFilter<"account"> | string | null
  email_autre?: Prisma.StringNullableFilter<"account"> | string | null
  company?: Prisma.StringNullableFilter<"account"> | string | null
  contact?: Prisma.StringFilter<"account"> | string
  address1?: Prisma.StringNullableFilter<"account"> | string | null
  address2?: Prisma.StringNullableFilter<"account"> | string | null
  city?: Prisma.StringNullableFilter<"account"> | string | null
  state?: Prisma.StringNullableFilter<"account"> | string | null
  zip?: Prisma.StringNullableFilter<"account"> | string | null
  tel_home?: Prisma.StringNullableFilter<"account"> | string | null
  tel_office?: Prisma.StringNullableFilter<"account"> | string | null
  tel_office_ext?: Prisma.StringNullableFilter<"account"> | string | null
  cell?: Prisma.StringNullableFilter<"account"> | string | null
  fax?: Prisma.StringNullableFilter<"account"> | string | null
  invoice_delivery?: Prisma.IntFilter<"account"> | number
  land_owner?: Prisma.BoolFilter<"account"> | boolean
  frais?: Prisma.BoolFilter<"account"> | boolean
  ppa?: Prisma.BoolFilter<"account"> | boolean
  ppa_all_invoice?: Prisma.IntFilter<"account"> | number
  ppa_name?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_code?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_branch?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_account?: Prisma.StringNullableFilter<"account"> | string | null
  ppa_amount?: Prisma.DecimalFilter<"account"> | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFilter<"account"> | number
  ppa_all_tmp?: Prisma.IntFilter<"account"> | number
  ppa_fixed?: Prisma.BoolFilter<"account"> | boolean
  commercial?: Prisma.BoolFilter<"account"> | boolean
  vip?: Prisma.BoolFilter<"account"> | boolean
  tax_group?: Prisma.IntFilter<"account"> | number
  data_check?: Prisma.BoolFilter<"account"> | boolean
  created_by?: Prisma.IntNullableFilter<"account"> | number | null
  notes_client?: Prisma.StringNullableFilter<"account"> | string | null
  keyword?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_reason?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_cie?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_note?: Prisma.StringNullableFilter<"account"> | string | null
  terminate_date?: Prisma.StringNullableFilter<"account"> | string | null
  call?: Prisma.BoolFilter<"account"> | boolean
  pub?: Prisma.BoolFilter<"account"> | boolean
  portal_client_log?: Prisma.BoolFilter<"account"> | boolean
  mauvais_payeur?: Prisma.BoolFilter<"account"> | boolean
  renew_phone?: Prisma.BoolFilter<"account"> | boolean
  ppa_cc?: Prisma.IntFilter<"account"> | number
  stripe_id?: Prisma.StringNullableFilter<"account"> | string | null
}, "id">

export type accountOrderByWithAggregationInput = {
  id?: Prisma.SortOrder
  customer_id?: Prisma.SortOrderInput | Prisma.SortOrder
  date_orig?: Prisma.SortOrderInput | Prisma.SortOrder
  date_last?: Prisma.SortOrderInput | Prisma.SortOrder
  date_expire?: Prisma.SortOrderInput | Prisma.SortOrder
  language_id?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrderInput | Prisma.SortOrder
  username?: Prisma.SortOrderInput | Prisma.SortOrder
  password?: Prisma.SortOrderInput | Prisma.SortOrder
  group_id?: Prisma.SortOrder
  misc?: Prisma.SortOrderInput | Prisma.SortOrder
  status?: Prisma.SortOrderInput | Prisma.SortOrder
  first_name?: Prisma.SortOrderInput | Prisma.SortOrder
  middle_name?: Prisma.SortOrderInput | Prisma.SortOrder
  last_name?: Prisma.SortOrderInput | Prisma.SortOrder
  mandataire?: Prisma.SortOrderInput | Prisma.SortOrder
  title?: Prisma.SortOrderInput | Prisma.SortOrder
  email?: Prisma.SortOrderInput | Prisma.SortOrder
  email_autre?: Prisma.SortOrderInput | Prisma.SortOrder
  company?: Prisma.SortOrderInput | Prisma.SortOrder
  contact?: Prisma.SortOrder
  address1?: Prisma.SortOrderInput | Prisma.SortOrder
  address2?: Prisma.SortOrderInput | Prisma.SortOrder
  city?: Prisma.SortOrderInput | Prisma.SortOrder
  state?: Prisma.SortOrderInput | Prisma.SortOrder
  zip?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_home?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_office?: Prisma.SortOrderInput | Prisma.SortOrder
  tel_office_ext?: Prisma.SortOrderInput | Prisma.SortOrder
  cell?: Prisma.SortOrderInput | Prisma.SortOrder
  fax?: Prisma.SortOrderInput | Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  land_owner?: Prisma.SortOrder
  frais?: Prisma.SortOrder
  ppa?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_name?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_code?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_branch?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_account?: Prisma.SortOrderInput | Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  ppa_fixed?: Prisma.SortOrder
  commercial?: Prisma.SortOrder
  vip?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  data_check?: Prisma.SortOrder
  created_by?: Prisma.SortOrderInput | Prisma.SortOrder
  notes_client?: Prisma.SortOrderInput | Prisma.SortOrder
  keyword?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_reason?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_cie?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_note?: Prisma.SortOrderInput | Prisma.SortOrder
  terminate_date?: Prisma.SortOrderInput | Prisma.SortOrder
  call?: Prisma.SortOrder
  pub?: Prisma.SortOrder
  portal_client_log?: Prisma.SortOrder
  mauvais_payeur?: Prisma.SortOrder
  renew_phone?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
  stripe_id?: Prisma.SortOrderInput | Prisma.SortOrder
  _count?: Prisma.accountCountOrderByAggregateInput
  _avg?: Prisma.accountAvgOrderByAggregateInput
  _max?: Prisma.accountMaxOrderByAggregateInput
  _min?: Prisma.accountMinOrderByAggregateInput
  _sum?: Prisma.accountSumOrderByAggregateInput
}

export type accountScalarWhereWithAggregatesInput = {
  AND?: Prisma.accountScalarWhereWithAggregatesInput | Prisma.accountScalarWhereWithAggregatesInput[]
  OR?: Prisma.accountScalarWhereWithAggregatesInput[]
  NOT?: Prisma.accountScalarWhereWithAggregatesInput | Prisma.accountScalarWhereWithAggregatesInput[]
  id?: Prisma.BigIntWithAggregatesFilter<"account"> | bigint | number
  customer_id?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  date_orig?: Prisma.BigIntNullableWithAggregatesFilter<"account"> | bigint | number | null
  date_last?: Prisma.BigIntNullableWithAggregatesFilter<"account"> | bigint | number | null
  date_expire?: Prisma.BigIntNullableWithAggregatesFilter<"account"> | bigint | number | null
  language_id?: Prisma.StringWithAggregatesFilter<"account"> | string
  country_id?: Prisma.IntWithAggregatesFilter<"account"> | number
  currency_id?: Prisma.IntNullableWithAggregatesFilter<"account"> | number | null
  username?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  password?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  group_id?: Prisma.IntWithAggregatesFilter<"account"> | number
  misc?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  status?: Prisma.IntNullableWithAggregatesFilter<"account"> | number | null
  first_name?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  middle_name?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  last_name?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  mandataire?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  title?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  email?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  email_autre?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  company?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  contact?: Prisma.StringWithAggregatesFilter<"account"> | string
  address1?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  address2?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  city?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  state?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  zip?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  tel_home?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  tel_office?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  tel_office_ext?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  cell?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  fax?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  invoice_delivery?: Prisma.IntWithAggregatesFilter<"account"> | number
  land_owner?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  frais?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  ppa?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  ppa_all_invoice?: Prisma.IntWithAggregatesFilter<"account"> | number
  ppa_name?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  ppa_code?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  ppa_branch?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  ppa_account?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  ppa_amount?: Prisma.DecimalWithAggregatesFilter<"account"> | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatWithAggregatesFilter<"account"> | number
  ppa_all_tmp?: Prisma.IntWithAggregatesFilter<"account"> | number
  ppa_fixed?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  commercial?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  vip?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  tax_group?: Prisma.IntWithAggregatesFilter<"account"> | number
  data_check?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  created_by?: Prisma.IntNullableWithAggregatesFilter<"account"> | number | null
  notes_client?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  keyword?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  terminate_reason?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  terminate_cie?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  terminate_note?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  terminate_date?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
  call?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  pub?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  portal_client_log?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  mauvais_payeur?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  renew_phone?: Prisma.BoolWithAggregatesFilter<"account"> | boolean
  ppa_cc?: Prisma.IntWithAggregatesFilter<"account"> | number
  stripe_id?: Prisma.StringNullableWithAggregatesFilter<"account"> | string | null
}

export type accountCreateInput = {
  id?: bigint | number
  customer_id?: string | null
  date_orig?: bigint | number | null
  date_last?: bigint | number | null
  date_expire?: bigint | number | null
  language_id?: string
  country_id?: number
  currency_id?: number | null
  username?: string | null
  password?: string | null
  group_id?: number
  misc?: string | null
  status?: number | null
  first_name?: string | null
  middle_name?: string | null
  last_name?: string | null
  mandataire?: string | null
  title?: string | null
  email?: string | null
  email_autre?: string | null
  company?: string | null
  contact: string
  address1?: string | null
  address2?: string | null
  city?: string | null
  state?: string | null
  zip?: string | null
  tel_home?: string | null
  tel_office?: string | null
  tel_office_ext?: string | null
  cell?: string | null
  fax?: string | null
  invoice_delivery?: number
  land_owner?: boolean
  frais?: boolean
  ppa?: boolean
  ppa_all_invoice?: number
  ppa_name?: string | null
  ppa_code?: string | null
  ppa_branch?: string | null
  ppa_account?: string | null
  ppa_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: number
  ppa_all_tmp?: number
  ppa_fixed?: boolean
  commercial?: boolean
  vip?: boolean
  tax_group?: number
  data_check?: boolean
  created_by?: number | null
  notes_client?: string | null
  keyword?: string | null
  terminate_reason?: string | null
  terminate_cie?: string | null
  terminate_note?: string | null
  terminate_date?: string | null
  call?: boolean
  pub?: boolean
  portal_client_log?: boolean
  mauvais_payeur?: boolean
  renew_phone?: boolean
  ppa_cc?: number
  stripe_id?: string | null
}

export type accountUncheckedCreateInput = {
  id?: bigint | number
  customer_id?: string | null
  date_orig?: bigint | number | null
  date_last?: bigint | number | null
  date_expire?: bigint | number | null
  language_id?: string
  country_id?: number
  currency_id?: number | null
  username?: string | null
  password?: string | null
  group_id?: number
  misc?: string | null
  status?: number | null
  first_name?: string | null
  middle_name?: string | null
  last_name?: string | null
  mandataire?: string | null
  title?: string | null
  email?: string | null
  email_autre?: string | null
  company?: string | null
  contact: string
  address1?: string | null
  address2?: string | null
  city?: string | null
  state?: string | null
  zip?: string | null
  tel_home?: string | null
  tel_office?: string | null
  tel_office_ext?: string | null
  cell?: string | null
  fax?: string | null
  invoice_delivery?: number
  land_owner?: boolean
  frais?: boolean
  ppa?: boolean
  ppa_all_invoice?: number
  ppa_name?: string | null
  ppa_code?: string | null
  ppa_branch?: string | null
  ppa_account?: string | null
  ppa_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: number
  ppa_all_tmp?: number
  ppa_fixed?: boolean
  commercial?: boolean
  vip?: boolean
  tax_group?: number
  data_check?: boolean
  created_by?: number | null
  notes_client?: string | null
  keyword?: string | null
  terminate_reason?: string | null
  terminate_cie?: string | null
  terminate_note?: string | null
  terminate_date?: string | null
  call?: boolean
  pub?: boolean
  portal_client_log?: boolean
  mauvais_payeur?: boolean
  renew_phone?: boolean
  ppa_cc?: number
  stripe_id?: string | null
}

export type accountUpdateInput = {
  id?: Prisma.BigIntFieldUpdateOperationsInput | bigint | number
  customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  date_orig?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_last?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_expire?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  language_id?: Prisma.StringFieldUpdateOperationsInput | string
  country_id?: Prisma.IntFieldUpdateOperationsInput | number
  currency_id?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  username?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  password?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  group_id?: Prisma.IntFieldUpdateOperationsInput | number
  misc?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  status?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  middle_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  mandataire?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  title?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email_autre?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  company?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  contact?: Prisma.StringFieldUpdateOperationsInput | string
  address1?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  address2?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  city?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  zip?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_home?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office_ext?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  cell?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  fax?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  invoice_delivery?: Prisma.IntFieldUpdateOperationsInput | number
  land_owner?: Prisma.BoolFieldUpdateOperationsInput | boolean
  frais?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_all_invoice?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_branch?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_account?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFieldUpdateOperationsInput | number
  ppa_all_tmp?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_fixed?: Prisma.BoolFieldUpdateOperationsInput | boolean
  commercial?: Prisma.BoolFieldUpdateOperationsInput | boolean
  vip?: Prisma.BoolFieldUpdateOperationsInput | boolean
  tax_group?: Prisma.IntFieldUpdateOperationsInput | number
  data_check?: Prisma.BoolFieldUpdateOperationsInput | boolean
  created_by?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  notes_client?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  keyword?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_reason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_cie?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_note?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_date?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  call?: Prisma.BoolFieldUpdateOperationsInput | boolean
  pub?: Prisma.BoolFieldUpdateOperationsInput | boolean
  portal_client_log?: Prisma.BoolFieldUpdateOperationsInput | boolean
  mauvais_payeur?: Prisma.BoolFieldUpdateOperationsInput | boolean
  renew_phone?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_cc?: Prisma.IntFieldUpdateOperationsInput | number
  stripe_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}

export type accountUncheckedUpdateInput = {
  id?: Prisma.BigIntFieldUpdateOperationsInput | bigint | number
  customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  date_orig?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_last?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_expire?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  language_id?: Prisma.StringFieldUpdateOperationsInput | string
  country_id?: Prisma.IntFieldUpdateOperationsInput | number
  currency_id?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  username?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  password?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  group_id?: Prisma.IntFieldUpdateOperationsInput | number
  misc?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  status?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  middle_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  mandataire?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  title?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email_autre?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  company?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  contact?: Prisma.StringFieldUpdateOperationsInput | string
  address1?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  address2?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  city?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  zip?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_home?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office_ext?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  cell?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  fax?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  invoice_delivery?: Prisma.IntFieldUpdateOperationsInput | number
  land_owner?: Prisma.BoolFieldUpdateOperationsInput | boolean
  frais?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_all_invoice?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_branch?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_account?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFieldUpdateOperationsInput | number
  ppa_all_tmp?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_fixed?: Prisma.BoolFieldUpdateOperationsInput | boolean
  commercial?: Prisma.BoolFieldUpdateOperationsInput | boolean
  vip?: Prisma.BoolFieldUpdateOperationsInput | boolean
  tax_group?: Prisma.IntFieldUpdateOperationsInput | number
  data_check?: Prisma.BoolFieldUpdateOperationsInput | boolean
  created_by?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  notes_client?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  keyword?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_reason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_cie?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_note?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_date?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  call?: Prisma.BoolFieldUpdateOperationsInput | boolean
  pub?: Prisma.BoolFieldUpdateOperationsInput | boolean
  portal_client_log?: Prisma.BoolFieldUpdateOperationsInput | boolean
  mauvais_payeur?: Prisma.BoolFieldUpdateOperationsInput | boolean
  renew_phone?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_cc?: Prisma.IntFieldUpdateOperationsInput | number
  stripe_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}

export type accountCreateManyInput = {
  id?: bigint | number
  customer_id?: string | null
  date_orig?: bigint | number | null
  date_last?: bigint | number | null
  date_expire?: bigint | number | null
  language_id?: string
  country_id?: number
  currency_id?: number | null
  username?: string | null
  password?: string | null
  group_id?: number
  misc?: string | null
  status?: number | null
  first_name?: string | null
  middle_name?: string | null
  last_name?: string | null
  mandataire?: string | null
  title?: string | null
  email?: string | null
  email_autre?: string | null
  company?: string | null
  contact: string
  address1?: string | null
  address2?: string | null
  city?: string | null
  state?: string | null
  zip?: string | null
  tel_home?: string | null
  tel_office?: string | null
  tel_office_ext?: string | null
  cell?: string | null
  fax?: string | null
  invoice_delivery?: number
  land_owner?: boolean
  frais?: boolean
  ppa?: boolean
  ppa_all_invoice?: number
  ppa_name?: string | null
  ppa_code?: string | null
  ppa_branch?: string | null
  ppa_account?: string | null
  ppa_amount?: runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: number
  ppa_all_tmp?: number
  ppa_fixed?: boolean
  commercial?: boolean
  vip?: boolean
  tax_group?: number
  data_check?: boolean
  created_by?: number | null
  notes_client?: string | null
  keyword?: string | null
  terminate_reason?: string | null
  terminate_cie?: string | null
  terminate_note?: string | null
  terminate_date?: string | null
  call?: boolean
  pub?: boolean
  portal_client_log?: boolean
  mauvais_payeur?: boolean
  renew_phone?: boolean
  ppa_cc?: number
  stripe_id?: string | null
}

export type accountUpdateManyMutationInput = {
  id?: Prisma.BigIntFieldUpdateOperationsInput | bigint | number
  customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  date_orig?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_last?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_expire?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  language_id?: Prisma.StringFieldUpdateOperationsInput | string
  country_id?: Prisma.IntFieldUpdateOperationsInput | number
  currency_id?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  username?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  password?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  group_id?: Prisma.IntFieldUpdateOperationsInput | number
  misc?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  status?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  middle_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  mandataire?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  title?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email_autre?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  company?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  contact?: Prisma.StringFieldUpdateOperationsInput | string
  address1?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  address2?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  city?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  zip?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_home?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office_ext?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  cell?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  fax?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  invoice_delivery?: Prisma.IntFieldUpdateOperationsInput | number
  land_owner?: Prisma.BoolFieldUpdateOperationsInput | boolean
  frais?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_all_invoice?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_branch?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_account?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFieldUpdateOperationsInput | number
  ppa_all_tmp?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_fixed?: Prisma.BoolFieldUpdateOperationsInput | boolean
  commercial?: Prisma.BoolFieldUpdateOperationsInput | boolean
  vip?: Prisma.BoolFieldUpdateOperationsInput | boolean
  tax_group?: Prisma.IntFieldUpdateOperationsInput | number
  data_check?: Prisma.BoolFieldUpdateOperationsInput | boolean
  created_by?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  notes_client?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  keyword?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_reason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_cie?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_note?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_date?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  call?: Prisma.BoolFieldUpdateOperationsInput | boolean
  pub?: Prisma.BoolFieldUpdateOperationsInput | boolean
  portal_client_log?: Prisma.BoolFieldUpdateOperationsInput | boolean
  mauvais_payeur?: Prisma.BoolFieldUpdateOperationsInput | boolean
  renew_phone?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_cc?: Prisma.IntFieldUpdateOperationsInput | number
  stripe_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}

export type accountUncheckedUpdateManyInput = {
  id?: Prisma.BigIntFieldUpdateOperationsInput | bigint | number
  customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  date_orig?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_last?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  date_expire?: Prisma.NullableBigIntFieldUpdateOperationsInput | bigint | number | null
  language_id?: Prisma.StringFieldUpdateOperationsInput | string
  country_id?: Prisma.IntFieldUpdateOperationsInput | number
  currency_id?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  username?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  password?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  group_id?: Prisma.IntFieldUpdateOperationsInput | number
  misc?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  status?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  first_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  middle_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  last_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  mandataire?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  title?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  email_autre?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  company?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  contact?: Prisma.StringFieldUpdateOperationsInput | string
  address1?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  address2?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  city?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  state?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  zip?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_home?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  tel_office_ext?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  cell?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  fax?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  invoice_delivery?: Prisma.IntFieldUpdateOperationsInput | number
  land_owner?: Prisma.BoolFieldUpdateOperationsInput | boolean
  frais?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_all_invoice?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_name?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_branch?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_account?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  ppa_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string
  ppa_amount_buffer?: Prisma.FloatFieldUpdateOperationsInput | number
  ppa_all_tmp?: Prisma.IntFieldUpdateOperationsInput | number
  ppa_fixed?: Prisma.BoolFieldUpdateOperationsInput | boolean
  commercial?: Prisma.BoolFieldUpdateOperationsInput | boolean
  vip?: Prisma.BoolFieldUpdateOperationsInput | boolean
  tax_group?: Prisma.IntFieldUpdateOperationsInput | number
  data_check?: Prisma.BoolFieldUpdateOperationsInput | boolean
  created_by?: Prisma.NullableIntFieldUpdateOperationsInput | number | null
  notes_client?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  keyword?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_reason?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_cie?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_note?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  terminate_date?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
  call?: Prisma.BoolFieldUpdateOperationsInput | boolean
  pub?: Prisma.BoolFieldUpdateOperationsInput | boolean
  portal_client_log?: Prisma.BoolFieldUpdateOperationsInput | boolean
  mauvais_payeur?: Prisma.BoolFieldUpdateOperationsInput | boolean
  renew_phone?: Prisma.BoolFieldUpdateOperationsInput | boolean
  ppa_cc?: Prisma.IntFieldUpdateOperationsInput | number
  stripe_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null
}

export type accountOrderByRelevanceInput = {
  fields: Prisma.accountOrderByRelevanceFieldEnum | Prisma.accountOrderByRelevanceFieldEnum[]
  sort: Prisma.SortOrder
  search: string
}

export type accountCountOrderByAggregateInput = {
  id?: Prisma.SortOrder
  customer_id?: Prisma.SortOrder
  date_orig?: Prisma.SortOrder
  date_last?: Prisma.SortOrder
  date_expire?: Prisma.SortOrder
  language_id?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrder
  username?: Prisma.SortOrder
  password?: Prisma.SortOrder
  group_id?: Prisma.SortOrder
  misc?: Prisma.SortOrder
  status?: Prisma.SortOrder
  first_name?: Prisma.SortOrder
  middle_name?: Prisma.SortOrder
  last_name?: Prisma.SortOrder
  mandataire?: Prisma.SortOrder
  title?: Prisma.SortOrder
  email?: Prisma.SortOrder
  email_autre?: Prisma.SortOrder
  company?: Prisma.SortOrder
  contact?: Prisma.SortOrder
  address1?: Prisma.SortOrder
  address2?: Prisma.SortOrder
  city?: Prisma.SortOrder
  state?: Prisma.SortOrder
  zip?: Prisma.SortOrder
  tel_home?: Prisma.SortOrder
  tel_office?: Prisma.SortOrder
  tel_office_ext?: Prisma.SortOrder
  cell?: Prisma.SortOrder
  fax?: Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  land_owner?: Prisma.SortOrder
  frais?: Prisma.SortOrder
  ppa?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_name?: Prisma.SortOrder
  ppa_code?: Prisma.SortOrder
  ppa_branch?: Prisma.SortOrder
  ppa_account?: Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  ppa_fixed?: Prisma.SortOrder
  commercial?: Prisma.SortOrder
  vip?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  data_check?: Prisma.SortOrder
  created_by?: Prisma.SortOrder
  notes_client?: Prisma.SortOrder
  keyword?: Prisma.SortOrder
  terminate_reason?: Prisma.SortOrder
  terminate_cie?: Prisma.SortOrder
  terminate_note?: Prisma.SortOrder
  terminate_date?: Prisma.SortOrder
  call?: Prisma.SortOrder
  pub?: Prisma.SortOrder
  portal_client_log?: Prisma.SortOrder
  mauvais_payeur?: Prisma.SortOrder
  renew_phone?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
  stripe_id?: Prisma.SortOrder
}

export type accountAvgOrderByAggregateInput = {
  id?: Prisma.SortOrder
  date_orig?: Prisma.SortOrder
  date_last?: Prisma.SortOrder
  date_expire?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrder
  group_id?: Prisma.SortOrder
  status?: Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  created_by?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
}

export type accountMaxOrderByAggregateInput = {
  id?: Prisma.SortOrder
  customer_id?: Prisma.SortOrder
  date_orig?: Prisma.SortOrder
  date_last?: Prisma.SortOrder
  date_expire?: Prisma.SortOrder
  language_id?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrder
  username?: Prisma.SortOrder
  password?: Prisma.SortOrder
  group_id?: Prisma.SortOrder
  misc?: Prisma.SortOrder
  status?: Prisma.SortOrder
  first_name?: Prisma.SortOrder
  middle_name?: Prisma.SortOrder
  last_name?: Prisma.SortOrder
  mandataire?: Prisma.SortOrder
  title?: Prisma.SortOrder
  email?: Prisma.SortOrder
  email_autre?: Prisma.SortOrder
  company?: Prisma.SortOrder
  contact?: Prisma.SortOrder
  address1?: Prisma.SortOrder
  address2?: Prisma.SortOrder
  city?: Prisma.SortOrder
  state?: Prisma.SortOrder
  zip?: Prisma.SortOrder
  tel_home?: Prisma.SortOrder
  tel_office?: Prisma.SortOrder
  tel_office_ext?: Prisma.SortOrder
  cell?: Prisma.SortOrder
  fax?: Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  land_owner?: Prisma.SortOrder
  frais?: Prisma.SortOrder
  ppa?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_name?: Prisma.SortOrder
  ppa_code?: Prisma.SortOrder
  ppa_branch?: Prisma.SortOrder
  ppa_account?: Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  ppa_fixed?: Prisma.SortOrder
  commercial?: Prisma.SortOrder
  vip?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  data_check?: Prisma.SortOrder
  created_by?: Prisma.SortOrder
  notes_client?: Prisma.SortOrder
  keyword?: Prisma.SortOrder
  terminate_reason?: Prisma.SortOrder
  terminate_cie?: Prisma.SortOrder
  terminate_note?: Prisma.SortOrder
  terminate_date?: Prisma.SortOrder
  call?: Prisma.SortOrder
  pub?: Prisma.SortOrder
  portal_client_log?: Prisma.SortOrder
  mauvais_payeur?: Prisma.SortOrder
  renew_phone?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
  stripe_id?: Prisma.SortOrder
}

export type accountMinOrderByAggregateInput = {
  id?: Prisma.SortOrder
  customer_id?: Prisma.SortOrder
  date_orig?: Prisma.SortOrder
  date_last?: Prisma.SortOrder
  date_expire?: Prisma.SortOrder
  language_id?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrder
  username?: Prisma.SortOrder
  password?: Prisma.SortOrder
  group_id?: Prisma.SortOrder
  misc?: Prisma.SortOrder
  status?: Prisma.SortOrder
  first_name?: Prisma.SortOrder
  middle_name?: Prisma.SortOrder
  last_name?: Prisma.SortOrder
  mandataire?: Prisma.SortOrder
  title?: Prisma.SortOrder
  email?: Prisma.SortOrder
  email_autre?: Prisma.SortOrder
  company?: Prisma.SortOrder
  contact?: Prisma.SortOrder
  address1?: Prisma.SortOrder
  address2?: Prisma.SortOrder
  city?: Prisma.SortOrder
  state?: Prisma.SortOrder
  zip?: Prisma.SortOrder
  tel_home?: Prisma.SortOrder
  tel_office?: Prisma.SortOrder
  tel_office_ext?: Prisma.SortOrder
  cell?: Prisma.SortOrder
  fax?: Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  land_owner?: Prisma.SortOrder
  frais?: Prisma.SortOrder
  ppa?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_name?: Prisma.SortOrder
  ppa_code?: Prisma.SortOrder
  ppa_branch?: Prisma.SortOrder
  ppa_account?: Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  ppa_fixed?: Prisma.SortOrder
  commercial?: Prisma.SortOrder
  vip?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  data_check?: Prisma.SortOrder
  created_by?: Prisma.SortOrder
  notes_client?: Prisma.SortOrder
  keyword?: Prisma.SortOrder
  terminate_reason?: Prisma.SortOrder
  terminate_cie?: Prisma.SortOrder
  terminate_note?: Prisma.SortOrder
  terminate_date?: Prisma.SortOrder
  call?: Prisma.SortOrder
  pub?: Prisma.SortOrder
  portal_client_log?: Prisma.SortOrder
  mauvais_payeur?: Prisma.SortOrder
  renew_phone?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
  stripe_id?: Prisma.SortOrder
}

export type accountSumOrderByAggregateInput = {
  id?: Prisma.SortOrder
  date_orig?: Prisma.SortOrder
  date_last?: Prisma.SortOrder
  date_expire?: Prisma.SortOrder
  country_id?: Prisma.SortOrder
  currency_id?: Prisma.SortOrder
  group_id?: Prisma.SortOrder
  status?: Prisma.SortOrder
  invoice_delivery?: Prisma.SortOrder
  ppa_all_invoice?: Prisma.SortOrder
  ppa_amount?: Prisma.SortOrder
  ppa_amount_buffer?: Prisma.SortOrder
  ppa_all_tmp?: Prisma.SortOrder
  tax_group?: Prisma.SortOrder
  created_by?: Prisma.SortOrder
  ppa_cc?: Prisma.SortOrder
}

export type BigIntFieldUpdateOperationsInput = {
  set?: bigint | number
  increment?: bigint | number
  decrement?: bigint | number
  multiply?: bigint | number
  divide?: bigint | number
}

export type NullableStringFieldUpdateOperationsInput = {
  set?: string | null
}

export type NullableBigIntFieldUpdateOperationsInput = {
  set?: bigint | number | null
  increment?: bigint | number
  decrement?: bigint | number
  multiply?: bigint | number
  divide?: bigint | number
}

export type StringFieldUpdateOperationsInput = {
  set?: string
}

export type IntFieldUpdateOperationsInput = {
  set?: number
  increment?: number
  decrement?: number
  multiply?: number
  divide?: number
}

export type NullableIntFieldUpdateOperationsInput = {
  set?: number | null
  increment?: number
  decrement?: number
  multiply?: number
  divide?: number
}

export type BoolFieldUpdateOperationsInput = {
  set?: boolean
}

export type DecimalFieldUpdateOperationsInput = {
  set?: runtime.Decimal | runtime.DecimalJsLike | number | string
  increment?: runtime.Decimal | runtime.DecimalJsLike | number | string
  decrement?: runtime.Decimal | runtime.DecimalJsLike | number | string
  multiply?: runtime.Decimal | runtime.DecimalJsLike | number | string
  divide?: runtime.Decimal | runtime.DecimalJsLike | number | string
}

export type FloatFieldUpdateOperationsInput = {
  set?: number
  increment?: number
  decrement?: number
  multiply?: number
  divide?: number
}



export type accountSelect<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetSelect<{
  id?: boolean
  customer_id?: boolean
  date_orig?: boolean
  date_last?: boolean
  date_expire?: boolean
  language_id?: boolean
  country_id?: boolean
  currency_id?: boolean
  username?: boolean
  password?: boolean
  group_id?: boolean
  misc?: boolean
  status?: boolean
  first_name?: boolean
  middle_name?: boolean
  last_name?: boolean
  mandataire?: boolean
  title?: boolean
  email?: boolean
  email_autre?: boolean
  company?: boolean
  contact?: boolean
  address1?: boolean
  address2?: boolean
  city?: boolean
  state?: boolean
  zip?: boolean
  tel_home?: boolean
  tel_office?: boolean
  tel_office_ext?: boolean
  cell?: boolean
  fax?: boolean
  invoice_delivery?: boolean
  land_owner?: boolean
  frais?: boolean
  ppa?: boolean
  ppa_all_invoice?: boolean
  ppa_name?: boolean
  ppa_code?: boolean
  ppa_branch?: boolean
  ppa_account?: boolean
  ppa_amount?: boolean
  ppa_amount_buffer?: boolean
  ppa_all_tmp?: boolean
  ppa_fixed?: boolean
  commercial?: boolean
  vip?: boolean
  tax_group?: boolean
  data_check?: boolean
  created_by?: boolean
  notes_client?: boolean
  keyword?: boolean
  terminate_reason?: boolean
  terminate_cie?: boolean
  terminate_note?: boolean
  terminate_date?: boolean
  call?: boolean
  pub?: boolean
  portal_client_log?: boolean
  mauvais_payeur?: boolean
  renew_phone?: boolean
  ppa_cc?: boolean
  stripe_id?: boolean
}, ExtArgs["result"]["account"]>



export type accountSelectScalar = {
  id?: boolean
  customer_id?: boolean
  date_orig?: boolean
  date_last?: boolean
  date_expire?: boolean
  language_id?: boolean
  country_id?: boolean
  currency_id?: boolean
  username?: boolean
  password?: boolean
  group_id?: boolean
  misc?: boolean
  status?: boolean
  first_name?: boolean
  middle_name?: boolean
  last_name?: boolean
  mandataire?: boolean
  title?: boolean
  email?: boolean
  email_autre?: boolean
  company?: boolean
  contact?: boolean
  address1?: boolean
  address2?: boolean
  city?: boolean
  state?: boolean
  zip?: boolean
  tel_home?: boolean
  tel_office?: boolean
  tel_office_ext?: boolean
  cell?: boolean
  fax?: boolean
  invoice_delivery?: boolean
  land_owner?: boolean
  frais?: boolean
  ppa?: boolean
  ppa_all_invoice?: boolean
  ppa_name?: boolean
  ppa_code?: boolean
  ppa_branch?: boolean
  ppa_account?: boolean
  ppa_amount?: boolean
  ppa_amount_buffer?: boolean
  ppa_all_tmp?: boolean
  ppa_fixed?: boolean
  commercial?: boolean
  vip?: boolean
  tax_group?: boolean
  data_check?: boolean
  created_by?: boolean
  notes_client?: boolean
  keyword?: boolean
  terminate_reason?: boolean
  terminate_cie?: boolean
  terminate_note?: boolean
  terminate_date?: boolean
  call?: boolean
  pub?: boolean
  portal_client_log?: boolean
  mauvais_payeur?: boolean
  renew_phone?: boolean
  ppa_cc?: boolean
  stripe_id?: boolean
}

export type accountOmit<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = runtime.Types.Extensions.GetOmit<"id" | "customer_id" | "date_orig" | "date_last" | "date_expire" | "language_id" | "country_id" | "currency_id" | "username" | "password" | "group_id" | "misc" | "status" | "first_name" | "middle_name" | "last_name" | "mandataire" | "title" | "email" | "email_autre" | "company" | "contact" | "address1" | "address2" | "city" | "state" | "zip" | "tel_home" | "tel_office" | "tel_office_ext" | "cell" | "fax" | "invoice_delivery" | "land_owner" | "frais" | "ppa" | "ppa_all_invoice" | "ppa_name" | "ppa_code" | "ppa_branch" | "ppa_account" | "ppa_amount" | "ppa_amount_buffer" | "ppa_all_tmp" | "ppa_fixed" | "commercial" | "vip" | "tax_group" | "data_check" | "created_by" | "notes_client" | "keyword" | "terminate_reason" | "terminate_cie" | "terminate_note" | "terminate_date" | "call" | "pub" | "portal_client_log" | "mauvais_payeur" | "renew_phone" | "ppa_cc" | "stripe_id", ExtArgs["result"]["account"]>

export type $accountPayload<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  name: "account"
  objects: {}
  scalars: runtime.Types.Extensions.GetPayloadResult<{
    id: bigint
    customer_id: string | null
    date_orig: bigint | null
    date_last: bigint | null
    date_expire: bigint | null
    language_id: string
    country_id: number
    currency_id: number | null
    username: string | null
    password: string | null
    group_id: number
    misc: string | null
    status: number | null
    first_name: string | null
    middle_name: string | null
    last_name: string | null
    mandataire: string | null
    title: string | null
    email: string | null
    email_autre: string | null
    company: string | null
    contact: string
    address1: string | null
    address2: string | null
    city: string | null
    state: string | null
    zip: string | null
    tel_home: string | null
    tel_office: string | null
    tel_office_ext: string | null
    cell: string | null
    fax: string | null
    invoice_delivery: number
    land_owner: boolean
    frais: boolean
    ppa: boolean
    ppa_all_invoice: number
    ppa_name: string | null
    ppa_code: string | null
    ppa_branch: string | null
    ppa_account: string | null
    ppa_amount: runtime.Decimal
    ppa_amount_buffer: number
    ppa_all_tmp: number
    ppa_fixed: boolean
    commercial: boolean
    vip: boolean
    tax_group: number
    data_check: boolean
    created_by: number | null
    notes_client: string | null
    keyword: string | null
    terminate_reason: string | null
    terminate_cie: string | null
    terminate_note: string | null
    terminate_date: string | null
    call: boolean
    pub: boolean
    portal_client_log: boolean
    mauvais_payeur: boolean
    renew_phone: boolean
    ppa_cc: number
    stripe_id: string | null
  }, ExtArgs["result"]["account"]>
  composites: {}
}

export type accountGetPayload<S extends boolean | null | undefined | accountDefaultArgs> = runtime.Types.Result.GetResult<Prisma.$accountPayload, S>

export type accountCountArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> =
  Omit<accountFindManyArgs, 'select' | 'include' | 'distinct' | 'omit'> & {
    select?: AccountCountAggregateInputType | true
  }

export interface accountDelegate<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> {
  [K: symbol]: { types: Prisma.TypeMap<ExtArgs>['model']['account'], meta: { name: 'account' } }
  /**
   * Find zero or one Account that matches the filter.
   * @param {accountFindUniqueArgs} args - Arguments to find a Account
   * @example
   * // Get one Account
   * const account = await prisma.account.findUnique({
   *   where: {
   *     // ... provide filter here
   *   }
   * })
   */
  findUnique<T extends accountFindUniqueArgs>(args: Prisma.SelectSubset<T, accountFindUniqueArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>

  /**
   * Find one Account that matches the filter or throw an error with `error.code='P2025'`
   * if no matches were found.
   * @param {accountFindUniqueOrThrowArgs} args - Arguments to find a Account
   * @example
   * // Get one Account
   * const account = await prisma.account.findUniqueOrThrow({
   *   where: {
   *     // ... provide filter here
   *   }
   * })
   */
  findUniqueOrThrow<T extends accountFindUniqueOrThrowArgs>(args: Prisma.SelectSubset<T, accountFindUniqueOrThrowArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>

  /**
   * Find the first Account that matches the filter.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountFindFirstArgs} args - Arguments to find a Account
   * @example
   * // Get one Account
   * const account = await prisma.account.findFirst({
   *   where: {
   *     // ... provide filter here
   *   }
   * })
   */
  findFirst<T extends accountFindFirstArgs>(args?: Prisma.SelectSubset<T, accountFindFirstArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>

  /**
   * Find the first Account that matches the filter or
   * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountFindFirstOrThrowArgs} args - Arguments to find a Account
   * @example
   * // Get one Account
   * const account = await prisma.account.findFirstOrThrow({
   *   where: {
   *     // ... provide filter here
   *   }
   * })
   */
  findFirstOrThrow<T extends accountFindFirstOrThrowArgs>(args?: Prisma.SelectSubset<T, accountFindFirstOrThrowArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>

  /**
   * Find zero or more Accounts that matches the filter.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountFindManyArgs} args - Arguments to filter and select certain fields only.
   * @example
   * // Get all Accounts
   * const accounts = await prisma.account.findMany()
   * 
   * // Get first 10 Accounts
   * const accounts = await prisma.account.findMany({ take: 10 })
   * 
   * // Only select the `id`
   * const accountWithIdOnly = await prisma.account.findMany({ select: { id: true } })
   * 
   */
  findMany<T extends accountFindManyArgs>(args?: Prisma.SelectSubset<T, accountFindManyArgs<ExtArgs>>): Prisma.PrismaPromise<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "findMany", GlobalOmitOptions>>

  /**
   * Create a Account.
   * @param {accountCreateArgs} args - Arguments to create a Account.
   * @example
   * // Create one Account
   * const Account = await prisma.account.create({
   *   data: {
   *     // ... data to create a Account
   *   }
   * })
   * 
   */
  create<T extends accountCreateArgs>(args: Prisma.SelectSubset<T, accountCreateArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>

  /**
   * Create many Accounts.
   * @param {accountCreateManyArgs} args - Arguments to create many Accounts.
   * @example
   * // Create many Accounts
   * const account = await prisma.account.createMany({
   *   data: [
   *     // ... provide data here
   *   ]
   * })
   *     
   */
  createMany<T extends accountCreateManyArgs>(args?: Prisma.SelectSubset<T, accountCreateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>

  /**
   * Delete a Account.
   * @param {accountDeleteArgs} args - Arguments to delete one Account.
   * @example
   * // Delete one Account
   * const Account = await prisma.account.delete({
   *   where: {
   *     // ... filter to delete one Account
   *   }
   * })
   * 
   */
  delete<T extends accountDeleteArgs>(args: Prisma.SelectSubset<T, accountDeleteArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>

  /**
   * Update one Account.
   * @param {accountUpdateArgs} args - Arguments to update one Account.
   * @example
   * // Update one Account
   * const account = await prisma.account.update({
   *   where: {
   *     // ... provide filter here
   *   },
   *   data: {
   *     // ... provide data here
   *   }
   * })
   * 
   */
  update<T extends accountUpdateArgs>(args: Prisma.SelectSubset<T, accountUpdateArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>

  /**
   * Delete zero or more Accounts.
   * @param {accountDeleteManyArgs} args - Arguments to filter Accounts to delete.
   * @example
   * // Delete a few Accounts
   * const { count } = await prisma.account.deleteMany({
   *   where: {
   *     // ... provide filter here
   *   }
   * })
   * 
   */
  deleteMany<T extends accountDeleteManyArgs>(args?: Prisma.SelectSubset<T, accountDeleteManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>

  /**
   * Update zero or more Accounts.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountUpdateManyArgs} args - Arguments to update one or more rows.
   * @example
   * // Update many Accounts
   * const account = await prisma.account.updateMany({
   *   where: {
   *     // ... provide filter here
   *   },
   *   data: {
   *     // ... provide data here
   *   }
   * })
   * 
   */
  updateMany<T extends accountUpdateManyArgs>(args: Prisma.SelectSubset<T, accountUpdateManyArgs<ExtArgs>>): Prisma.PrismaPromise<Prisma.BatchPayload>

  /**
   * Create or update one Account.
   * @param {accountUpsertArgs} args - Arguments to update or create a Account.
   * @example
   * // Update or create a Account
   * const account = await prisma.account.upsert({
   *   create: {
   *     // ... data to create a Account
   *   },
   *   update: {
   *     // ... in case it already exists, update
   *   },
   *   where: {
   *     // ... the filter for the Account we want to update
   *   }
   * })
   */
  upsert<T extends accountUpsertArgs>(args: Prisma.SelectSubset<T, accountUpsertArgs<ExtArgs>>): Prisma.Prisma__accountClient<runtime.Types.Result.GetResult<Prisma.$accountPayload<ExtArgs>, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>


  /**
   * Count the number of Accounts.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountCountArgs} args - Arguments to filter Accounts to count.
   * @example
   * // Count the number of Accounts
   * const count = await prisma.account.count({
   *   where: {
   *     // ... the filter for the Accounts we want to count
   *   }
   * })
  **/
  count<T extends accountCountArgs>(
    args?: Prisma.Subset<T, accountCountArgs>,
  ): Prisma.PrismaPromise<
    T extends runtime.Types.Utils.Record<'select', any>
      ? T['select'] extends true
        ? number
        : Prisma.GetScalarType<T['select'], AccountCountAggregateOutputType>
      : number
  >

  /**
   * Allows you to perform aggregations operations on a Account.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {AccountAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
   * @example
   * // Ordered by age ascending
   * // Where email contains prisma.io
   * // Limited to the 10 users
   * const aggregations = await prisma.user.aggregate({
   *   _avg: {
   *     age: true,
   *   },
   *   where: {
   *     email: {
   *       contains: "prisma.io",
   *     },
   *   },
   *   orderBy: {
   *     age: "asc",
   *   },
   *   take: 10,
   * })
  **/
  aggregate<T extends AccountAggregateArgs>(args: Prisma.Subset<T, AccountAggregateArgs>): Prisma.PrismaPromise<GetAccountAggregateType<T>>

  /**
   * Group by Account.
   * Note, that providing `undefined` is treated as the value not being there.
   * Read more here: https://pris.ly/d/null-undefined
   * @param {accountGroupByArgs} args - Group by arguments.
   * @example
   * // Group by city, order by createdAt, get count
   * const result = await prisma.user.groupBy({
   *   by: ['city', 'createdAt'],
   *   orderBy: {
   *     createdAt: true
   *   },
   *   _count: {
   *     _all: true
   *   },
   * })
   * 
  **/
  groupBy<
    T extends accountGroupByArgs,
    HasSelectOrTake extends Prisma.Or<
      Prisma.Extends<'skip', Prisma.Keys<T>>,
      Prisma.Extends<'take', Prisma.Keys<T>>
    >,
    OrderByArg extends Prisma.True extends HasSelectOrTake
      ? { orderBy: accountGroupByArgs['orderBy'] }
      : { orderBy?: accountGroupByArgs['orderBy'] },
    OrderFields extends Prisma.ExcludeUnderscoreKeys<Prisma.Keys<Prisma.MaybeTupleToUnion<T['orderBy']>>>,
    ByFields extends Prisma.MaybeTupleToUnion<T['by']>,
    ByValid extends Prisma.Has<ByFields, OrderFields>,
    HavingFields extends Prisma.GetHavingFields<T['having']>,
    HavingValid extends Prisma.Has<ByFields, HavingFields>,
    ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
    InputErrors extends ByEmpty extends Prisma.True
    ? `Error: "by" must not be empty.`
    : HavingValid extends Prisma.False
    ? {
        [P in HavingFields]: P extends ByFields
          ? never
          : P extends string
          ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
          : [
              Error,
              'Field ',
              P,
              ` in "having" needs to be provided in "by"`,
            ]
      }[HavingFields]
    : 'take' extends Prisma.Keys<T>
    ? 'orderBy' extends Prisma.Keys<T>
      ? ByValid extends Prisma.True
        ? {}
        : {
            [P in OrderFields]: P extends ByFields
              ? never
              : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
          }[OrderFields]
      : 'Error: If you provide "take", you also need to provide "orderBy"'
    : 'skip' extends Prisma.Keys<T>
    ? 'orderBy' extends Prisma.Keys<T>
      ? ByValid extends Prisma.True
        ? {}
        : {
            [P in OrderFields]: P extends ByFields
              ? never
              : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
          }[OrderFields]
      : 'Error: If you provide "skip", you also need to provide "orderBy"'
    : ByValid extends Prisma.True
    ? {}
    : {
        [P in OrderFields]: P extends ByFields
          ? never
          : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
      }[OrderFields]
  >(args: Prisma.SubsetIntersection<T, accountGroupByArgs, OrderByArg> & InputErrors): {} extends InputErrors ? GetAccountGroupByPayload<T> : Prisma.PrismaPromise<InputErrors>
/**
 * Fields of the account model
 */
readonly fields: accountFieldRefs;
}

/**
 * The delegate class that acts as a "Promise-like" for account.
 * Why is this prefixed with `Prisma__`?
 * Because we want to prevent naming conflicts as mentioned in
 * https://github.com/prisma/prisma-client-js/issues/707
 */
export interface Prisma__accountClient<T, Null = never, ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs, GlobalOmitOptions = {}> extends Prisma.PrismaPromise<T> {
  readonly [Symbol.toStringTag]: "PrismaPromise"
  /**
   * Attaches callbacks for the resolution and/or rejection of the Promise.
   * @param onfulfilled The callback to execute when the Promise is resolved.
   * @param onrejected The callback to execute when the Promise is rejected.
   * @returns A Promise for the completion of which ever callback is executed.
   */
  then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): runtime.Types.Utils.JsPromise<TResult1 | TResult2>
  /**
   * Attaches a callback for only the rejection of the Promise.
   * @param onrejected The callback to execute when the Promise is rejected.
   * @returns A Promise for the completion of the callback.
   */
  catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): runtime.Types.Utils.JsPromise<T | TResult>
  /**
   * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
   * resolved value cannot be modified from the callback.
   * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
   * @returns A Promise for the completion of the callback.
   */
  finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise<T>
}




/**
 * Fields of the account model
 */
export interface accountFieldRefs {
  readonly id: Prisma.FieldRef<"account", 'BigInt'>
  readonly customer_id: Prisma.FieldRef<"account", 'String'>
  readonly date_orig: Prisma.FieldRef<"account", 'BigInt'>
  readonly date_last: Prisma.FieldRef<"account", 'BigInt'>
  readonly date_expire: Prisma.FieldRef<"account", 'BigInt'>
  readonly language_id: Prisma.FieldRef<"account", 'String'>
  readonly country_id: Prisma.FieldRef<"account", 'Int'>
  readonly currency_id: Prisma.FieldRef<"account", 'Int'>
  readonly username: Prisma.FieldRef<"account", 'String'>
  readonly password: Prisma.FieldRef<"account", 'String'>
  readonly group_id: Prisma.FieldRef<"account", 'Int'>
  readonly misc: Prisma.FieldRef<"account", 'String'>
  readonly status: Prisma.FieldRef<"account", 'Int'>
  readonly first_name: Prisma.FieldRef<"account", 'String'>
  readonly middle_name: Prisma.FieldRef<"account", 'String'>
  readonly last_name: Prisma.FieldRef<"account", 'String'>
  readonly mandataire: Prisma.FieldRef<"account", 'String'>
  readonly title: Prisma.FieldRef<"account", 'String'>
  readonly email: Prisma.FieldRef<"account", 'String'>
  readonly email_autre: Prisma.FieldRef<"account", 'String'>
  readonly company: Prisma.FieldRef<"account", 'String'>
  readonly contact: Prisma.FieldRef<"account", 'String'>
  readonly address1: Prisma.FieldRef<"account", 'String'>
  readonly address2: Prisma.FieldRef<"account", 'String'>
  readonly city: Prisma.FieldRef<"account", 'String'>
  readonly state: Prisma.FieldRef<"account", 'String'>
  readonly zip: Prisma.FieldRef<"account", 'String'>
  readonly tel_home: Prisma.FieldRef<"account", 'String'>
  readonly tel_office: Prisma.FieldRef<"account", 'String'>
  readonly tel_office_ext: Prisma.FieldRef<"account", 'String'>
  readonly cell: Prisma.FieldRef<"account", 'String'>
  readonly fax: Prisma.FieldRef<"account", 'String'>
  readonly invoice_delivery: Prisma.FieldRef<"account", 'Int'>
  readonly land_owner: Prisma.FieldRef<"account", 'Boolean'>
  readonly frais: Prisma.FieldRef<"account", 'Boolean'>
  readonly ppa: Prisma.FieldRef<"account", 'Boolean'>
  readonly ppa_all_invoice: Prisma.FieldRef<"account", 'Int'>
  readonly ppa_name: Prisma.FieldRef<"account", 'String'>
  readonly ppa_code: Prisma.FieldRef<"account", 'String'>
  readonly ppa_branch: Prisma.FieldRef<"account", 'String'>
  readonly ppa_account: Prisma.FieldRef<"account", 'String'>
  readonly ppa_amount: Prisma.FieldRef<"account", 'Decimal'>
  readonly ppa_amount_buffer: Prisma.FieldRef<"account", 'Float'>
  readonly ppa_all_tmp: Prisma.FieldRef<"account", 'Int'>
  readonly ppa_fixed: Prisma.FieldRef<"account", 'Boolean'>
  readonly commercial: Prisma.FieldRef<"account", 'Boolean'>
  readonly vip: Prisma.FieldRef<"account", 'Boolean'>
  readonly tax_group: Prisma.FieldRef<"account", 'Int'>
  readonly data_check: Prisma.FieldRef<"account", 'Boolean'>
  readonly created_by: Prisma.FieldRef<"account", 'Int'>
  readonly notes_client: Prisma.FieldRef<"account", 'String'>
  readonly keyword: Prisma.FieldRef<"account", 'String'>
  readonly terminate_reason: Prisma.FieldRef<"account", 'String'>
  readonly terminate_cie: Prisma.FieldRef<"account", 'String'>
  readonly terminate_note: Prisma.FieldRef<"account", 'String'>
  readonly terminate_date: Prisma.FieldRef<"account", 'String'>
  readonly call: Prisma.FieldRef<"account", 'Boolean'>
  readonly pub: Prisma.FieldRef<"account", 'Boolean'>
  readonly portal_client_log: Prisma.FieldRef<"account", 'Boolean'>
  readonly mauvais_payeur: Prisma.FieldRef<"account", 'Boolean'>
  readonly renew_phone: Prisma.FieldRef<"account", 'Boolean'>
  readonly ppa_cc: Prisma.FieldRef<"account", 'Int'>
  readonly stripe_id: Prisma.FieldRef<"account", 'String'>
}
    

// Custom InputTypes
/**
 * account findUnique
 */
export type accountFindUniqueArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter, which account to fetch.
   */
  where: Prisma.accountWhereUniqueInput
}

/**
 * account findUniqueOrThrow
 */
export type accountFindUniqueOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter, which account to fetch.
   */
  where: Prisma.accountWhereUniqueInput
}

/**
 * account findFirst
 */
export type accountFindFirstArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter, which account to fetch.
   */
  where?: Prisma.accountWhereInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
   * 
   * Determine the order of accounts to fetch.
   */
  orderBy?: Prisma.accountOrderByWithRelationInput | Prisma.accountOrderByWithRelationInput[]
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
   * 
   * Sets the position for searching for accounts.
   */
  cursor?: Prisma.accountWhereUniqueInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Take `±n` accounts from the position of the cursor.
   */
  take?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Skip the first `n` accounts.
   */
  skip?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
   * 
   * Filter by unique combinations of accounts.
   */
  distinct?: Prisma.AccountScalarFieldEnum | Prisma.AccountScalarFieldEnum[]
}

/**
 * account findFirstOrThrow
 */
export type accountFindFirstOrThrowArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter, which account to fetch.
   */
  where?: Prisma.accountWhereInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
   * 
   * Determine the order of accounts to fetch.
   */
  orderBy?: Prisma.accountOrderByWithRelationInput | Prisma.accountOrderByWithRelationInput[]
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
   * 
   * Sets the position for searching for accounts.
   */
  cursor?: Prisma.accountWhereUniqueInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Take `±n` accounts from the position of the cursor.
   */
  take?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Skip the first `n` accounts.
   */
  skip?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
   * 
   * Filter by unique combinations of accounts.
   */
  distinct?: Prisma.AccountScalarFieldEnum | Prisma.AccountScalarFieldEnum[]
}

/**
 * account findMany
 */
export type accountFindManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter, which accounts to fetch.
   */
  where?: Prisma.accountWhereInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
   * 
   * Determine the order of accounts to fetch.
   */
  orderBy?: Prisma.accountOrderByWithRelationInput | Prisma.accountOrderByWithRelationInput[]
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
   * 
   * Sets the position for listing accounts.
   */
  cursor?: Prisma.accountWhereUniqueInput
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Take `±n` accounts from the position of the cursor.
   */
  take?: number
  /**
   * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
   * 
   * Skip the first `n` accounts.
   */
  skip?: number
  distinct?: Prisma.AccountScalarFieldEnum | Prisma.AccountScalarFieldEnum[]
}

/**
 * account create
 */
export type accountCreateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * The data needed to create a account.
   */
  data: Prisma.XOR<Prisma.accountCreateInput, Prisma.accountUncheckedCreateInput>
}

/**
 * account createMany
 */
export type accountCreateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * The data used to create many accounts.
   */
  data: Prisma.accountCreateManyInput | Prisma.accountCreateManyInput[]
  skipDuplicates?: boolean
}

/**
 * account update
 */
export type accountUpdateArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * The data needed to update a account.
   */
  data: Prisma.XOR<Prisma.accountUpdateInput, Prisma.accountUncheckedUpdateInput>
  /**
   * Choose, which account to update.
   */
  where: Prisma.accountWhereUniqueInput
}

/**
 * account updateMany
 */
export type accountUpdateManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * The data used to update accounts.
   */
  data: Prisma.XOR<Prisma.accountUpdateManyMutationInput, Prisma.accountUncheckedUpdateManyInput>
  /**
   * Filter which accounts to update
   */
  where?: Prisma.accountWhereInput
  /**
   * Limit how many accounts to update.
   */
  limit?: number
}

/**
 * account upsert
 */
export type accountUpsertArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * The filter to search for the account to update in case it exists.
   */
  where: Prisma.accountWhereUniqueInput
  /**
   * In case the account found by the `where` argument doesn't exist, create a new account with this data.
   */
  create: Prisma.XOR<Prisma.accountCreateInput, Prisma.accountUncheckedCreateInput>
  /**
   * In case the account was found with the provided `where` argument, update it with this data.
   */
  update: Prisma.XOR<Prisma.accountUpdateInput, Prisma.accountUncheckedUpdateInput>
}

/**
 * account delete
 */
export type accountDeleteArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
  /**
   * Filter which account to delete.
   */
  where: Prisma.accountWhereUniqueInput
}

/**
 * account deleteMany
 */
export type accountDeleteManyArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Filter which accounts to delete
   */
  where?: Prisma.accountWhereInput
  /**
   * Limit how many accounts to delete.
   */
  limit?: number
}

/**
 * account without action
 */
export type accountDefaultArgs<ExtArgs extends runtime.Types.Extensions.InternalArgs = runtime.Types.Extensions.DefaultArgs> = {
  /**
   * Select specific fields to fetch from the account
   */
  select?: Prisma.accountSelect<ExtArgs> | null
  /**
   * Omit specific fields from the account
   */
  omit?: Prisma.accountOmit<ExtArgs> | null
}
